home *** CD-ROM | disk | FTP | other *** search
Text File | 2003-09-24 | 104.3 KB | 2,697 lines |
- 2003 Sep 24 - Build 2032a
- -------- Bart Oldeman (bart@dosemu.org)
- + Changes Bart
- * fix segment problems with ctrl-c and character uppercase
- handlers
- * fix critical error callers to set the critical error code
- immediately before calling the handler (in case they call
- DOS-59); don't set the critical error in inthndlr.c if
- something else already did. Return with an errorcode if
- "truename" and "read"/"write" encountered a critical error.
- * sys.c: add /k kernname.sys option to and straighten out SYS option
- processing; remove the metakern magic.
- * config.c: ignore the segment part for multi-part device drivers
- 2003 Sep 21 - Build 2032
- -------- Bart Oldeman (bart@dosemu.org)
- + Changes Rune Espeseth <re@icd.no> (modified by Bart)
- * config.txt, config.c: Full screen config.sys menus (use MENUCOLOR=)
- + Changes Michal Bakowski (mb@orad.pl)
- * initdisk.c, kernel.asm: Change the boot drive to always
- be C: if DLASortByDriveNo==1
- + Changes Arkady
- * dsk.c: Use memcpy instead of fmemcpy; avoid downcasting
- from far to near.
- * sysclk.c: err if sizeof(struct ClockRecord) != rp->r_count
- move year init below reading the BIOS
- * main.c: init_device corrections/cleanups
- * device.h: Change r_status and dh_name to unsigned quantities.
- * task.c: Free memory if there is an error in the relocation
- table.
- * floppy.asm, getvec.asm, rdatclk.asm, rdpcclk.asm, wrpcclk.asm:
- driver .asm files optimizations (also from Bart); remove
- obsolete rdatclk.
- * build.txt: Fix some typos.
- * inthndlr.c: Add missing (); small optimization for DosGetdate/time.
- + Changes Lucho
- * boot.asm, boot32.asm, boot32lb.asm, sys.c: add metakern support:
- sys looks for a file metakern.sys which is a multiple of 512.
- * break.c: Fix ctrl-break bug.
- * ioctl.c: IOCTL 4406 provided reverse AL output on regular
- files - FF if EOF, 0 if not. It should output 0 if EOF, FF if not.
- * initclk.c: Initclk changes
- * config.c, init-mod.h, initoem.c: Support for
- switches=/e[[:]nnnn] and for moving the EBDA
- * fatfs.c: Use 0x10000UL (avoids Turbo C warning)
- * sys.c: Move manually added "RCS" entries to the CVS log.
- * main.c: Adjustments for MSVC.
- * ioctl.c: int21/ax=440d lock/unlock logical/physical volume
- simulate success for MS-DOS 7+ SCANDISK etc. --LG
- * main.c: && should be || in check for \, / and :
- * task.c: Adjust registers used when starting programs. Some
- demos expect undocumented values (with Bart).
- * mscl8.mak: Forgotten HMA_TEXT for MS compilers.
- * sys.c: Add lock/unlock drive to SYS
- * history.txt: Changelog correction.
- * fatfs.c: Use near bpb on the stack in bpb_to_dpb. Make
- sure the number of FAT sectors is actually enough to hold that
- many clusters. Otherwise back the number of clusters down
- * procsupt.asm, proto.h, task.c: Don't disable a20 for
- "exit" int21/ah=4c
- + Changes Lucho, Tom, Eric
- * boot.asm, boot32.asm, boot32lb.asm, makefiles, sys.c:
- * boot.asm modified to support non-512 byte sectors
- (e.g. 1.2 MB NEC diskettes)
- * 512 byte sector size check removed (although Eric's boot32ea.asm
- does require 512-byte sectors, all LBA FAT32 volumes have
- 512-byte sectors anyway).
- * boot.asm cleaned up and modified to support Metakern
- bsDriveNumber updated by SYS even #ifndef STORE_BOOT_INFO
- * (nothing in common)
- * SYS Now supports and includes the following new boot sectors:
- 1) the combined CHS+LBA FAT12/FAT16 boot sector by Tom Ehlert(29 July)
- 2) the CHS-only FAT32 boot sector -- as patched by Jon Gentle(08 July)
- 3) the LBA-only FAT32 boot sector by Eric Auer and Jon Gentle (19 July)
- * The old combined (CHS+LBA), no-CALCPARAMS, no-resizable, non-Ghostable,
- non-standard FAT32 boot sector and STORE_BOOT_INFO is no longer used.
- * dump_sector() showed ASCII debug printout for the old sector
- only - fixed.
- * Put a boot sector only if sector size= 512 (may it not be so in
- Japan?!). If non-512 byte sectors encountered, report to the
- fd-kernel mailing list.
- * Now puts boot sector before copying kernel/shell so it works in
- WinNT now.
- * check_space() now implemented at last (required significant
- modifications)
- * New (FAT type) detection method according to a MS White Paper.
- * Now BOOTONLY works even without preceding boot sector image file name.
- * Some minor code cleanups.
- * Bart: some cleanups to the above; replaced 386 code for CHS FAT32
- by 8088 code. Use boot32lb.asm instead of boot32ea.asm
- + Changes Bart
- * portab.h, process.h, init-mod.h, inithma.c, kernel.asm, main.c, task.c:
- * add support for the far jmp at "int 30" (0000:00c0)
- * mirror it for the HMA (ffff:00d0)
- * put all DOS int handler (and the CPM entry jumped to from
- int30) jumpers in the "CONST" portion of DGROUP (instead of
- LGROUP) This helps Turbo C++ 1.01 make with the -S (swap)
- switch.
- * adjustments to set the relevant PSP fields in task.c
- * blockio.c: Always use huge block sectors if the relevant bit is
- set in the device header. This solves a problem with xmsdsk.
- * chario.c: Small optimizations
- * clobber.bat: Remove duplicate clobber.
- * Flip some slashes for Linux compat and simplifications in makefiles
- * device.h, portab.h: Use STATIC=static for watcom C (statics
- are in the mapfile); remove some cruft.
- * makefile, wlinker.bat: More verbose mapfiles for watcom
- C; some slash preparations to allow cross-building on Linux
- * exeflat.c, patchobj.c: Fix warnings reported by Turbo C
- * break.c, chario.c, dosfns.c, globals.h, inthndlr.c,
- proto.h, systime.c: (with a little help from Arkady)
- Simplifications and cleanups.
- Pass a near pointer to the far pointer that points to the device
- instead of an SFT index (in general).
- Make cooked_write much faster by only testing for input every 32
- characters. No longer test for ctl_s on syscon if writing to
- the printer: just read from the printer which will return zero
- characters. Fix reading/writing zero characters by returning
- "256" (special code). Adjust interfaces in other files.
- * portab.h: New UNREFERENCED_PARAMETER macro that appears to
- work for all compilers.
- * floppy.asm: Remove unused code.
- * init-mod.h: Solve compilation problem with Borland C++ 3.1
- * config.b: "-p" is no longer necessary in config.bat
- * kernel.asm: Add necessary "BootHardDiskSeconds" for non
- UPXed kernels.
- * chario.c, dosfns.c: Add necessary casts to ? : constructions;
- cleanup read_line_handle a little.
- * portab.h: Add peek and poke #defines
- * chario.c: Fix pointer overflow problem for reading line using handle.
- * makefiles, exeflat.c Clean cleans a bit more; change () to (void)
- * main.c: Set the PSP before the DTA. This solves an interrupt
- vector table corruption.
- * kernel.asm: Use "local" (instead of "global") disable/enable
- A20. This solves the problems with NIOS.
- * asmsupt.asm, misc.c, proto.h, strings.c: Remove (unused) strncpy.
- 2003 Jul 19 - Build 2031
- -------- Bart Oldeman (bart@dosemu.org)
- + Changes Luchezar Georgiev
- * (with Bart) add extra low disk buffer to avoid HMA
- problems with certain device drivers.
- * Add an extra space character at the end of the command line
- for device drivers to prevent wrong behavior at empty command line.
- * point to a correct environment for INSTALL=
- (fixes problems with xmsdsk).
- * change device driver error code check (using S_ERROR | S_DONE)
- (fixes problem with the SystemSoft PCMCIA socket services driver)
- * correct parameter order in inthndlr.c, chario.c
- * INSTALLHIGH correction.
- + Changes Tom
- * Fix a problem with the 'BootFromHarddiskIfNoKeyHit' option.
- that occurred with some Compaq and Fujitsu/Siemens highend equipment.
- + Changes Bernd Blaauw
- * config.txt updates
- + Changes Steffen Kaiser
- * NLS adjustments
- + Changes Bart
- * Correct problem with multiple UMBs (bug #1671)
- * main.c: there aren't lastdrive open file handles but a
- maximum of 20.
- * Make "unable to disable A20" message #ifdef DEBUG only.
- * config.c,main.c: Small size optimizations (some proposed by
- Arkady Belousov)
- * asmsupt.asm: Removed unnecessary jcxz's (Arkady)
- * intr.asm: intr() cleanup and small optimizations (Arkady)
- * Use PASCAL calling convention by default for Turbo compilers.
- * Move more externs to header files
- * SFT init cleanup (+3 files need to be low)
- * config.c, main.c: Fix bug in block device driver init of
- DPBs (bug #1969, TDSK problem)
- 2003 Jun 18 - Build 2030
- -------- Bart Oldeman (bart@dosemu.org)
- + Changes Tom
- * if user left accidentally floppy or CD in drive,
- give him a chance to continue to boot from HD.
- disabled by default, enablable by SYS CONFIG
- (BOOTHARDDISKSECONDS)
- + Changes Lixing Yuan
- * dosnames.c cleanup, fix for truename if the filename
- contains wildcards and a trailing dot.
- + Changes Eric Auer
- * add sanity check to initdisk.c for (driveParam->chs.Sector == 0)
- + some display tweaks
- * add EECHO (echo with $=ESC) support to the config.sys parser.
- * distinguish between the builtin DOS version and the settable
- DOS version.
- * console.asm now accepts extended scancodes (modified by Bart, fixes
- bug #1657)
- * added BOOTONLY option to SYS (modified by Bart)
- + Changes David Bolen
- * add support for UNC-style paths (that start with "\\")
- + Changes Luchezar Georgiev
- * add Bulgarian country structure data
- + Changes Bart
- * flip some slashes in drivers/*.asm
- (enables cross-assembly on Linux)
- * remove superfluous printf("\n") in patchobj.c
- * combine the INIT class with the CODE class (classes can span
- multiple physical segments)
- * re-add _TEXT to LGROUP to be able to simplify the patchobj magic
- * don't specify -zPI_GROUP for the init code in Borland compilers
- (unnecessary, it will be put there because of segs.inc)
- * remove STDPATCH; it is no longer necessary
- * add FILESHIGH, LASTDRIVEHIGH, and STACKSHIGH and DOSDATA=UMB
- to load these structures into UMBs
- * make DOS sub-MCBs visible (seen by MEM)
- * preliminary allocation of FILES etc. now takes place at the
- top of conventional memory, and device drivers are loaded before
- the final allocation takes place.
- * handle multiple UMBs more correctly (but config.sys can use
- only one UMB for devicehigh -- /Ln,xxxx is not yet implemented)
- * minor size optimizations in newstuff.c, chario.c, dosfns.c and fcbfns.c.
- asmsupt.asm: correct fmemchr (all n's) and *memset/*memcpy
- (n==0)
- * introduce lol structure for list of lists; avoid lots of
- relocations
- * avoid more relocations in the asm files by loading ds from
- [cs:_DGROUP_]
- * Fix problem with attributes with the volume label bit + findnext
- * SYS: avoid copying kernel.sys and command.com if the destination
- is identical to the source (fixes bug #1656).
- * Fix bug in DeleteBlockInBufferCache: needs to make the block
- invalid, not flush it, if we're writing (bug #1635).
- * added switches=/k/n/f support to the config.sys parser.
- 2003 Mar 14 - Build 2029
- -------- Bart Oldeman (bart@dosemu.org)
- + Changes Tom
- * fattab.c, fat.h removed the wrong ELSE_ISFAT32()
- * fatfs.c: rmdir would crash if you rmdir'ed an existing file
- * config.c, main.c, portab.h
- implement INSTALL and INSTALLHIGH for config.sys
- basic COUNTRY=xxx support (with a little help from others,
- mentioned in config.c)
- * execrh.asm: save si, di for strategy device driver handler
- * (adjusted by Bart): the internal "truename" has to reject
- wildcards for all commands except for the exposed "truename"
- (DosTrueName, int21/ah=60), FindFirst and FCB functions.
- + Changes Bart
- * add top level makefile with list of files to zip for releases
- * remove obsolete documentation and intr.h
- * eliminated the "f_highwater" fnode field.
- * reintroduced HMA_TEXT segment and adjust segments in libm.lib
- to solve problems with Borland compilers.
- 2002 Dec 9 - Build 2028
- -------- Bart Oldeman (bart@dosemu.org)
- + Changes Tom
- * move clock driver initialization to inittext
- * new ELSE_ISFAT16 macro to save some bytes
- * use _TEXT for old HMA_TEXT, _LOWTEXT for old _TEXT to get
- a slightly less complicated memory model from the C compiler's
- point of view.
- * add support for int2f/4a01,4a02: query/allocate HMA space.
- * updated config.txt
- + Changes Arkady V. Belousov
- * slightly improved asm for print_hex and int2f clear_ax stuff
- * use #error for unknown compilers
- * remove hexDigits reference
- * correct comment in kernel.asm (pad to 05fdh)
- + Changes Bart
- * fix ss:sp init bug for int21/ax=4b01 (visible in DEBUG)
- * fix redirection problem for character output routines
- * fix press the any key message for floppy swaps
- * correct cluster value for BAD cluster
- * correct FAT12/16/32 cutoff magic values as per the MS spec
- * the BUFFERS structure is now the same as in MSDOS 5+ and uses
- a circular double-linked list using near pointers.
- * move all old RCS log messages into one seperate file
- * divide the fnode f_cluster_offset field by the size of a cluster:
- this gives a more efficient map_cluster().
- * point the CharMapSrvc pointer to the DOS DS for AARD compliance.
- * nls.c: set CX to cooperate with load_unf.exe
- 2002 Nov 9 - Build 2027
- -------- Bart Oldeman (bart@dosemu.org)
- + Changes Tom
- * memset ErrorAlreadyPrinted to 0 in config.c
- + Changes Bart
- * reset drive before and after int26 in SYS for winnt compatibility
- * propagate sharing bits correctly in DosOpen
- * return DE_NFILES if a volume label is not found; search for volume
- label if attr & 8 not just if attr==8
- * initialize the critical error code to 0 in inthndlr.c
- * ignore value of DH for extended open int21/ah=6c
- * fix problem with NULL device code being in the wrong segment
- * Hopefully innocent hack to deal with NDN in ioctl.c (ignore upper bits
- of the drive number)
- * use subst bit 15 for int21/ax=4409(IOCTL-CHECK IF BLOCK DEVICE REMOTE).
- 2002 Oct 27 - Build 2027rc
- -------- Bart Oldeman (bart@dosemu.org)
- + Changes Bart
- * reorganized chario.c, got F1-F6, Ins, Del, etc. working
- * fixed bug in extended open
- * fixed bug in memory manager (realloc should try to defragment;
- UMB fixes)
- * consistently pass sft_idx around for all SFT functions (instead of
- the far pointer)
- * lpUserStack is gone :)
- * Idle interrupt: now uses disk i/o stack instead of error stack if it
- re-enters DOS; can not be called from int21/ah=3f. It also checks
- InDos now (as documented in "undocumented dos").
- * int21/ah=59 should use the disk i/o stack, not the character stack.
- * get_cds: a uniform way to get the CDS for drive X which can do error
- checking too. get_dpb: similar.
- * task.c uses mid-level system file handles instead of PSP handles.
- * SFT sequence is MS/DR DOS like: 0=AUX 1=CON 2=PRN
- * int21/ah=4d needs to clear the return code after returning it.
- * Removed need for "unusedretval" because some functions return a long int
- now.
- * Do not warn for some additional LBA partition layouts (begin/end
- cylinder=1023) in initdisk.c.
- * support int2f/ax=1213 (uppercase character) (ASCII only for now).
- * fix for top of memory parameter to device driver - fixes problem
- with DRDOS emm386
- * eliminated printf for non-init code -- use put_unsigned and
- put_string instead
- * better MK_FP for Turbo C++ 1.01 and later
- * PSP related task.c cleanups
- * use --best and new upx (1.23) for binary build
- Changes Tom and Bart:
- * Use Pascal calling convention for memcpy and friends in asmsupt.asm
- * Fixed make temp file
- * fix bug in DosFindNext
- * misc makefile fixes
- 2002 Aug 3 - Build 2027test
- -------- Bart Oldeman (bart@dosemu.org)
- + Changes Tom
- * enable LBA FAT16 booting
- * workaround for redirectors that do/do not set the opencount
- * int25/26 should fail for redirectors
- * set the number of sectors per track in the INT 1E table when
- reading/writing floppies
- * disabled fatal() in error.c
- * Disable the A20 line upon exec (int21/ah=4B). This is necessary for some
- brain-dead exepacked programs.
- * removed unnecessary "BUFFERS" fields
- * proper check for network/non-existing drive for int25/26.
- * save more bytes on the stack at various places
- * made the local registers for inthndlr.c "near" instead of "far".
- * fix bug in strchr handling for fcbfns.c (FcbParseFname)
- + Changes Steffen (but changed a lot by Bart)
- * new truename (Bart: but without mapPath() style struct)
- * merge open/create functions into one extended open function
- * also honor the sharing bits better for "open"
- * use local 8+3 path names in fatfs.c; merge name+extension
- into one array
- * take care of filenames that start with ASCII 5: they should be
- treated as starting with 0xe5
- * exploit the fact that the filenames are already "truenames",
- i.e., fully qualified in fatfs.c. This simplifies parsing a lot.
- + Changes Bart
- * make "if exist c:\dir\nul" working
- * honor "do not inherit handle on exec" flag for "open".
- * improve the FCB functions so that they set the critical error code
- properly
- * next_cluster returns "1" instead of DE_xxx in case of failure.
- * create one function to do binary character IO (used for CLOCK$
- driver and character drivers such as CON)
- * better handling of ABORT/FAIL
- * merge all read and write functions
- * patchobj makefile correction
- * printf uses va_list etc.
- * quicker and more robust Watcom build
- * use FS: and GS: for Watcom 386.
- * workaround: don't use DL for floppy boots, but fixed A:
- * disable unused functions in floppy.asm
- * cleaner prototypes (thanks to gcc)
- * reorganized ioctl.c; there was an uninitialized variable.
- * inlined some functions of fattab.c
- * added (f)strcmp, (f)memcmp and (f)memchr to asmsupt.asm
- * initially suggested by Arkady: dsk.c FS_info copy optimization
- * initialize a VDISK signature in the HMA
- * sysclk.c: small size optimization
- * small UMB fixes
- * made the CDS into a proper array instead of a structure with
- one member
- * large task.c cleanups -
- merge as much as possible from DosExeLoader and DosComLoader
- (from Tom:) eliminate some structures in low memory
- * main.c: slightly cleanup "SHELL=" line parsing.
- 2002 May 9 - Build 2026b
- -------- Bart Oldeman (bart@dosemu.org)
- + Changes Tom
- * limit output at boot time somewhat
- * GetCurrentDirectory should fail, if drive is accessible
- * fixed some minor config.sys parser bugs and have the possibility
- of things like 123?device=EMM386.EXE NOEMS
- * shorter version of DosMemLargest()
- + Changes Bart
- * repaired makefile dependencies
- * implemented multi-sector writes, and re-merged
- readblock()/writeblock() into rwblock ()
- * implemented int21/ah=1c for network drives (RHIDE needs this)
- * initialize current_ldt for findnext (hinted by Steffen)
- * check serial number for floppy disk changes where the drive
- does not feature a changeline
- * reset to root directory when floppy has changed
- * cleaned up endian helpers {get,put}{byte,word,long}
- * don't close file if disk is full
- * enforce minimum of 9 sectors per track for INT1E (necessary for
- some floppies on some XTs)
- * clear carry when calling INT23 (ctrl-break handler) as per RBIL
- * don't copy FCBs on exec if they are pointed to by FFFF:FFFF.
- * resolved warnings for Watcom (now compiles with -wx -we)
- * truename fix (return DE_FILENOTFND for foo.bar.foo)
- + Changes Jeremy
- * fixed SYS _dos_getdrive for non-Borland compilers
- + Changes Tom and Bart
- * cleaned up fatfs.c, fattab.c, sysclk.c (CLOCK$ driver), systime.c
- 2002 Feb 17 - Build 2026a
- -------- Bart Oldeman (bart@dosemu.org)
- + Changes Martin
- * fixed SYS for non-Watcom compilers
- + Changes Tom
- * set CONFIG environment variable to selected number of CONFIG.SYS
- menu entry, for example for use in AUTOEXEC.BAT.
- + Changes Bart
- * fixed FCBOpen
- * network redirector fixes ; it appears that clearing CF before calling
- the redirector is safer than setting CF
- * allow creating, renaming and deleting volume labels using FCBs
- * fix renaming with wildcards using FCBs
- * some dosfns.c and fcbfns.c clean-ups
- * booting from hard disk now always sets the default drive to C:,
- not D: if booting from the second physical hard disk, etc (bug #1062).
- 2002 Feb 9 - Build 2026
- -------- Bart Oldeman (bart@dosemu.org)
- + Changes Tom
- * fixed various typos, #includes
- + Changes Bart
- * fixed ECHO in config.sys
- * made passing parameters to command.com more robust:
- zero commandline before use, fixed buffer overflow for F5+F8
- * "uppermem_root" in the List of Lists is now FFFF if no UMBs
- available, as documented in RBIL
- * removed all direct hooks from init_text to hma_text; duplicated
- the remaining functions (memset, memcpy and friends).
- * bumped up default DOS version of FAT32 enabled kernel to 7.10
- 2002 Feb 3 - Build 2026test
- -------- Bart Oldeman (bart@dosemu.org)
- + Changes Tom
- * FCB clean-ups and fixes (bug in FCB Random IO,
- CYRUS CHESS, bug #1014)
- * initial config.sys menus (see config.txt)
- * execrh.asm: construct 'interrupt' address after strategy to avoid
- some issues with non-trivial 'strategy' routines.
- * make kernel UPX-able
- * cleaned up midnight flag, dates
- * tmark() and friends are floppy specific and implemented in C
- instead of ASM (parts by Bart)
- * DMA boundary checking gives the right number of sectors if
- the start sector is 512-bytes-aligned.
- + Changes Victor
- * lfn fixes (lfn is only a place holder, does not work yet)
- * FAT32 fixes
- * dosemu log nicer
- + Changes Martin
- * log output
- * warning fixes for sys, patchobj and prf.c
- + Changes Bart
- * FCB clean-ups and fixes
- * make Watcom compiled kernel runnable
- * make compilation with Pascal style calling conventions
- for Borland compilers (-p) possible
- * initialize CDS before opening devices
- * implement lock/unlock for remote drives
- * implement commit file (int21/ah=68,6a)
- * implement ioctl get/set logical drive map (int21/ax=440E--F)
- * implement get address of drive data table (int2f/ax=0803)
- * fix "get address of SDA" (int21/ax=5d06)
- * do not use CHS if the root extended partition of the relevant
- logical partition is labelled LBA (bug #1011)
- * hopefully avoid format problem (bug #1030) by not setting drive
- to "non-accessible" while reading the bpb.
- * boot sector fixes:
- enable booting beyond cylinder x where x * number of heads >= 65536.
- still uses CHS to boot (not able to boot beyond cylinder 1023)
- recognize FF8-FFF as FAT12 ending (was only FFF) (bug #1021)
- * avoid using LIB when linking the kernel by echo-ing to a linker
- resource file. Use a batch file to bypass Borlands Make 2.0
- unwillingness to redirect stdout.
- * UMB variable clean-up
- * use of "const" for constant global variables
- * reduced size of Watcom-compiled SYS binary
- 2001 Nov 18 - Build 2025c
- -------- Bart Oldeman (bart@dosemu.org)
- + Changes Bart
- * ran source code .c and .h files through "indent"
- * fixed new printf bug
- * removed some duplicate documents
- + Changes Victor & Bart
- * fixed sys.c fat32 detection bug (offset 0x10, not 0x2c)
- 2001 Nov 17 - Build 2025b
- -------- Bart Oldeman (bart@dosemu.org)
- + Changes Tom
- * fix a few more batch file and makefile details
- * fix problems with command line editing: F1 and right key
- * string merging in dosnames.c
- * optimizations for MSC
- + Changes Bart
- * fix readblock problem not properly detecting EOF - it sometimes
- returned an error where it should just report a short count.
- Also fnp->f_offset==0 is not a special case for blockread
- (neither should it be for write - but that'll be for later)
- For both cases it's perfectly legal to do a seek first.
- * fix writeblock not setting highwater to offset when doing a
- truncate (count == 0)
- * hopefully now really fix the floppy change problem -
- dsk.c: getbpb() should query changeline BEFORE reading the BPB.
- * fixed warnings from WATCOM compiler - one of them was in fact
- a bug in fcbfns.c
- * started big clean-up
- - converted obsolete bcopy(), sncopy() and friends to memcpy(),
- strncpy() etc.
- - removed $Log entries that are also on the CVS server and
- removed the $ so no new entries will be added in files.
- indenting will be next - other fixes will be buried in diffs if
- I do that now.
- 2001 Nov 12 - Build 2025a
- -------- Bart Oldeman (bart@dosemu.org)
- + Changes Tom
- * initialize LBA parameter struct to 0's - some BIOSes don't fill
- in everything. Thanks to Bernd Blaauw's bug report.
- * Minor boot sector optimization.
- * added some exeflat options
- + Changes Jeremy
- * changes to fdkrncfg.c: mostly cosmetic to the output
- * added sys.doc file (updated by Bart)
- + Changes Bart
- * let int 0 (divide by zero) and int 6 (invalid opcode) print a
- stack trace to aid in debugging
- * fixed floppy drive detection for XT's.
- * fixed bug in int21/ah=0x32 and friends - we should flush data before the
- forced media_check
- * Use CHS addressing if possible on partitions with the relevant ID,
- you can overide this using the new FORCELBA and GLOBALENABLELBASUPPORT
- sys config options.
- * Always use BIOS values for translating LBA to CHS for fixed disks -
- ignoring the boot sector values. For floppies the boot sector is used.
- * fixed "truename hello." to remove the trailing dot.
- * added options to SYS to write to a boot sector image file
- * set Critical Error Code for ioctl's
- * fake cluster size for 64k clusters just like FAT32 for INT21/AH=0x36
- and friends.
- + Changes Bart+Tom+Victor
- * make makefile system more robust
- + Changes Victor
- * cleaned up map_cluster and dir_read (bug fixed by Bart)
- * updated LFN API (in development, not used yet)
- 2001 Nov 4 - Build 2025a (test)
- -------- Bart Oldeman (bart@dosemu.org)
- + Changes tom
- * config.sys processing: placing ? on the left side of '=' like
- ?device= or device ?=
- asks for this single line
- fill the available HMA with buffers
- * added kernel configuration options to sys.com, small area at 60:xx
- (in cooperation with Jeremy)
- * readblock optimized to read as many data as possible in one
- int13 request - great speedups for large reads
- * some more SDA variables need to be updated for the network
- redirector (the sft index)
- * reduce stack usage in task.c, fattab.c, ioctl.c, execrh.asm, inthndlr.c
- * protect high part of 32-bit registers (stacks.inc)
- * moved copyright messages to init data to save a bit of memory
- * added relocinf, patchobj, sorted + some more output of exeflat
- * UMB fixes
- + Fixes Bart, Victor, Tom
- * more FAT32 fixes - to work with device drivers
- * fixed overflow problem with more than 2048 directory entries
- * various space saving changes, dir_init_fnode
- + Changes Bart, Tom
- * many makefile changes to enable compilation with different
- compilers (MS, Watcom, Borland). Watcom compiles but the result
- does not run yet.
- + Changes Bart
- * extended the double-byte lead table from int21/ah=63 to 4 zeros
- to make Watcom happy
- * support for IOCTL AX=440D, CL=40,41,42,61,62 for
- read/write/format track - this enables R. Nordier format to work
- * default floppy type depends on the drive
- * rewrote many parts of int2f.asm to have a cleaner remote_xxx
- interface with less code and stack usage.
- * limit for int21/ah=36 is FFF6 total/free sectors
- * made the rtc clock reading code a bit more robust - assumes
- there is no rtc if the returned date is zero
- * removed non-necessary code in dosnames.c because we're always
- dealing with a TRUENAME there
- * added zero extending of files, but removed it (unless you force
- it) since MSDOS doesn't zero-extend files either
- * wrote a source for exeflat, removed all binaries from the source
- * added more INT2F/AH=12 functions to solve some MSCDEX issues
- * changed BAD sector handling : only ....FF7 is recognized as BAD,
- but FORMAT information from initdisk will only give ....FEF as
- the largest cluster (for safety), so ....FF0-....FF6 are not used
- for newly formatted disks (here .... is either nothing, F, or
- FFFF, FAT12/FAT16/FAT32).
- * more fatfs/fatdir clean-ups - now unnecessary fields dfull,
- dremote and dsize removed from fnodes.
- 2001 Sep 24 - Build 2025
- -------- Bart Oldeman (bart@dosemu.org)
- + Fixes Victor
- * More FAT32 fixes
- + Fixes Tom
- * Printer handling
- * misc INT2F/AH=12 fixes.
- * misc clean-ups
- + Fixes Bart
- * Added drive B: handling if only one floppy drive available
- (look for play_dj() in dsk.c)
- * Simplify Victor's FAT32 fixes a bit
- * More printer clean-ups
- * fixed sys (thanks Jeremy)
- * DosChangeDir fails for path name too long.
- + Fixes Jeremy
- * Changed SYS so if no source given or only source drive (no path)
- given, then checks for kernel.sys & command.com in current
- path (of current drive or given drive) and if not there
- uses root (but only if source & destination drive are different).
- Fix printf to include count(ret) if copy can't write all requested bytes
- 2001 Sep 22 - Build 2025 (test)
- -------- Bart Oldeman (bart@dosemu.org)
- + Added Victor
- * FAT32 support (credits to Martin Stromberg for boot32.asm optimizations)
- * Delete long file names if short file name given
- + Added Jeremy
- * modified SYS so it takes optional 2nd parameter (similar to PC DOS)
- where if only 1 argument is given, assume to be destination drive,
- but if two arguments given, 1st is source (drive and/or path)
- and second is destination drive
- + fixes Victor
- * some small FCB and dsk.c fixes
- + fixes Tom
- * some FAT32 issues
- * many compiler portability changes (compiles with Watcom, MSC, ...)
- * DosMemChange should set the PSP
- * converted INT2F/AH=12 functions to C and added some - enough to
- get most of the MS LAN network client working
- + fixes Bart
- * some FAT32 issues
- * Dos{Open,Creat}Sft drive letter issues
- for CDROMs (thanks Jeremy)
- * shrink_file should ALWAYS fail for directories, also with
- dos_set_fattr (thanks Jeremy)
- * only give warnings for slightly suspect partitions at boot
- time where CHS does not match LBA.
- * re-enabled copyright notice.
- * some dsk.c clean-ups to avoid DIR giving the same contents for
- a different floppy (get serial number/volume label did reset the
- changed state).
- * attribute should be 8-bit fix
- 2001 Aug 19 - Build 2024/h
- -------- Bart Oldeman (bart@dosemu.org)
- + fixes Bart
- * truename fixes (#580)
- * free space fixes (#249)
- * Ctrl-C/Ctrl-Break fix
- 2001 Aug 19 - Build 2024/g
- -------- Bart Oldeman (bart@dosemu.org)
- + fixes Bart
- * set file time fixes
- * clock fixes
- * findfirst/next fixes
- * added a bit more int2f/ax=12xx functionality
- * buffers trick to fool MFT so that it does not crash
- * Ctrl-S (pause) and Ctrl-P (printer echo) now work.
- Ctrl-Q is ignored by DOS.
- * FCB "closing twice is legal" fix. Necessary for visicalc.
- + fixes Bart + Tom
- * fixed shsucdx /u unloading problem
- 2001 Jul 28 - Build 2024/f
- -------- Bart Oldeman (bart@dosemu.org)
- + fixes Bart
- * fixed get current directory - MSCDEX works now (always)
- * initdisk.c correctly sets number of hidden sectors: necessary
- for FORMAT - SYS chain to work
- + updates Bart
- * initialisation memory situation changed: kernel is loaded
- to the top of conventional memory in the beginning. Then
- move it back low or high depending on DOS=HIGH and the presence
- of an XMS driver.
- DOS=HIGH without an XMS driver (such as FDXMS) has no effect anymore!
- + fixes Tom, Victor, Bart
- * various fatfs.c fixes and clean ups
-
- 2001 Jul 23 - Build 2024/e
- -------- Bart Oldeman (bart@dosemu.org)
- + fixes Tom
- * dyninit allocation fix
- * various clean ups
- + fixes Bart
- * #define DBLBYTE in inhndlr.c. Necessary for PQDI
- * FCB corrections and cleanups (with a little help from Tom)
- * cleaned up (FCB)FindFirst/FindNext a little more.
- * task.c: copies default FCBs, initializes AX properly and
- an int21/ax=4b01 fix. Also closes all FCB opened files upon
- termination of a program.
- * dosnames.c: fixed DJGPP "ls c:/" problem reported by Martin
- + fixes Victor Vlasenko
- * Makefile fix for dealing with Borland make 3.6
- * fix for fatfs.c shrink_file()
- + fixes Bart
- * handle B: just like A: on a single floppy system. There still needs to be
- user interaction like "Please put a floppy in drive B:".
- * ioctl.c fix for INT21/AX=4400 + sft driveno field
- * various small fcb fixes
- * put file position number and pointers to Pri/SecPathName into
- SDA. Now MSCDEX works as redirector (but still not always :-()
- * redirector set attribute fixes + various cleanups
- * truename+attr+ioctl fix => DJGPP libc compiles cleanly!
- + changes Bart
- * use the output of truename() consistently: this saves a lot of
- headaches in parsing later and also allows a lot of simplifying:
- made many parameters in fatfs.c and fatdir.c NEAR
- + added Bart
- * partly implemented the "Drive Data Table" see RBIL INT2f/AX=0803
- * implemented construction of default BPB in initdisk.c
- * implemented the access flag in dsk.c
- * printf writes to DOSEMU log if prf.c compiled with #define DOSEMU
- + fixes Bart
- * dsk.c uses default BPB in the right places (with help from Tom and Brian)
- * Brian's FORMAT now works
- * Tab fix (bug reported by Martin Stromberg)
- * INT21/AH=0x1f now simply uses AH=0x32 for the default drive
- + fixes Tom
- * saved some static variables
- * implementation of int_2f_111e_call() for network/LAN manager
- * return AX=0001 for default redirector handler
- * enable use of multiple UMBs
- * fixed task.c 'LOADHIGH executables': minAlloc == maxAlloc = 0
- and an fixed overwriting the MCB
- 2001 Jul 9 - Build 2024/d
- -------- Bart Oldeman (bart@dosemu.org)
- + fixes Bart:
- * fixed Ctrl-C (Ctrl-S and Ctrl-Q still missing).
- * ioctl EOF fix (DJGPP less&gdb problem reported by Martin Stromberg)
- * INT21/AH=29 (Parse Filename into FCB) fix (NC problem reported
- by Ken Martwick) with clean up from Tom.
- * ioctl should do a media_check before calling the block driver:
- this fixes bug #726 (first dir gave serial no. 1234-5678).
- * initdisk.c now uses the init data segment.
- + fixes Tom:
- * fixes for INT21/AH=32; this should cure the problems with
- Brian's new format.
- * more SYS fixes.
- + added Tom:
- * some more diagnostics (123) to aid finding bugs when booting from
- a hard disk.
-
- from 2001 jun 23 : KE2024BP
-
- + fixes Tom:
- * FAT FS: would not expand files correctly, if lseek()
- beyond EOF (see also relnotes.txt)
- * FcbFindFirst/Next made compatible with MSDOS CHKDSK
- * saved even more bytes (now 24 buffers in HMA :-)
-
- from KE2024BM
- + added Tom:
- * a mechanism, to regain near data (like miarray, bpbarray,...)
- this is somewhat braindamaging, moving the kernel up and down,
- working with different CS/DS combinations, but somehow working, :-)
- miarray allocated, using this mechanism.
- * made f_nodes near (2 K saving in HMA_TEXT)
- this technic might as well applied to CDs, DPB, sft's, ...
- this even saves a few bytes on stack :-)
-
- from 2001 May 21: Build2024L
- + Fixes Tom:
- * Clustersize 64K made working (one small ULONG was missing)
- * check for drive existence for INT25/26
- * NDEV = max number of possible harddisk partitions bumped
- from 8 to 20 (my testconfiguration has 13)
-
- + Added tom:
- * LBA support for disks > 8GB (with the help from Brian
- Reifsnyder, see also relnotes.txt)
- * moved initialization for DISK (partition scanning) to INIT_CODE
-
- 2001 Jun 2 - Build 2024
- -------- Bart Oldeman (bart@dosemu.org)
- + Fixes Tom:
- * small fixes again.
- * one possible cause for data corruption (BFR_VALID) detected
- * directories with 'ARCHIVE' attribute could not be deleted
- * saved even more bytes (now 20 buffers in HMA :-)
- * some issues with pathnames around PARSE_MAX removed
- * blanks in filenames weren't proper handled
- * there was (at rare circumstances) a buffer overflow
- while config.sys parsing.
- + Fixes Bart:
- * INT 21 0A - Dos Buffered Input reworked
- * init_PSPSet() fix for setting the PSP
- + Added tom:
- * slighly better buffer handling (search BFR_UNCACHE)
- now go more FAT+DIR sectors, less DATA sectors into cache
- * dos_mkdir tuned (was ~0.5 sec on 64K cluster partitions)
-
- 2001 Apr 29 - Build 2024
- -------- Bart Oldeman (bart@dosemu.org)
- + Fixes Bart:
- * fixed the "TYPE > FOO.TXT" poor man's editor.
- * use "fast console output" (int 29) when applicable.
- * moved 5 FILES to DOS DS:00CC and fixed the SFT linked list.
- * cleaned up findfirst/findnext for redirected drives.
- Tom:
- * more VDISK changes (changed slightly by Bart)
- * check for presence of A:/B: (changed by Bart to use the BIOS equipment flag
- from INT11 instead of INT13).
- * added F5/F8 stepping through config.sys; default SHELL=COMMAND.COM /P/E:256
- Use ESC to stop single stepping, F5 to skip remaining config.sys/autoexec.bat.
- * new sys: uses INT25/26 instead of the low level INT13 related kernel code from
- floppy.asm (see also comments in sys.c) + a few fixes (also boot.asm related)
- from Bart.
- * Hopefully fixed DateTime Changed + ATTRIB |= ARCHIVE bug.
- * cleaned up dsk.c and saved more bytes.
- Przemyslaw Czerpak:
- * Default lastdrive should be 5 (E) not 6 (F).
- * fixed not ignoring whitespace after '=' in config.sys
- * noted INT21/AX=3800 bug for getting the country. Put in a workaround for now.
- 2001 Apr 21 - Build 2024
- -------- Bart Oldeman (bart@dosemu.org)
- + Fixes Tom:
- * fixed a missing close_dir in fatfs.c.
- * many reductions of stack space requirements.
- we hope this fixes some FAT corruption problems.
- Bart:
- * fixed "copy con" and INT21/AH=0B. The SFT_FEOF flag,
- strangely enough, if true indicates NOT end-of-file.
- * VDISK signature required in HMA (bug 701 dborca@usa.net).
- Alan Kamrowski
- * fixed intr: it wasn't putting the flags back correctly
- and swapped si and bp.
- + Update Bart:
- * Changed initialization data segment to its code segment.
- This frees up a few more kb.
- * This required some header reorganisation:
- init-mod.h is for the init modules, globals.h for all the
- others.
- * Eliminated the master environment, as it is normally
- managed by command.com, not by the kernel. This saves 512
- bytes and command.com now copies a default environment from
- 0068:0000; this is in the DOS_PSP at 60:0.
- * Moved low memory code segment to 70:0.
- + Add Tom:
- * Default interrupt 6 handler (invalid opcode).
- 2001 Apr 16 - Build 2024
- -------- Bart Oldeman (bart@dosemu.org)
- + Fixes * Use turboc.cfg to avoid long command lines; edit ALLCFLAGS
- in config.mak to enable DEBUG etc.
- * Fixed critical error handler.
- * Fixed loading .exe's in UMBs if not enough space available.
- * Some device drivers require \r\n at the end of their
- parameter line.
- 2001 Apr 16 - Build 2023
- -------- Bart Oldeman (bart@dosemu.org)
- + Fixes * Thanks to Martin Stromberg for pointing some bugs out:
- * more warnings fixed.
- * accidentally opened too many file handles at boot time.
- * device drivers should not be linked into the device chain
- if they do not take up memory.
- + Add * added printf "%S" and "%Fs" to print far strings.
- * enabled and cleaned up INT21/AH=6C (extended open/create).
- 2001 Apr 15 - Build 2023
- -------- Bart Oldeman (bart@dosemu.org)
- + Fixes Tom:
- * apisupt.asm not necessary anymore.
- * fix warnings.
- * Don't allow directories to be created in DOS_CREAT.
- * LoadDevice: drivers should not hang the computer if they fail.
- Bart:
- * fixed SYS.
- * made most calls near again, with a jump/stack trick to
- switch between INIT_TEXT and HMA_TEXT.
- * INIT_TEXT now calls INT21 itself for some things (setting
- PSP, opening/reading/closing devices and (fd)config.sys).
- * fixed some carry handling in inthndlr.c and
- * drives are checked before trying to access them.
- * fixed console driver "busy state" confusion: the built-in
- driver had it wrong, nansi.sys had it right:
- "If no characters in buffer, return BUSY".
- * space savings (RTL related and various other places)
- * redirector fixes for find_next.
- * CREAT on a device file failed (FD said it already existed).
- But for some reason it should not fail in DOS.
- * get ATTRIB/other things on a device file should return
- FILENOTFOUND, not PATHNOTFOUND.
- The sft_status field is not used for redirected drives.
- * DosSelectDrv checks the media before setting the default
- drive.
- * Fixed INT21/AH=3,4,5 (character R/W AUX/PRN).
- Hans Lermen:
- * critical error handler destroyed AH (entry.asm).
- Martin Stromberg
- * find_first for volume labels fix.
- * check drive at more places and avoid drive "@:" for drive "':".
- * config.m: comment out NASM= by default.
- * printf fix with DEBUG on.
- + Add Tom: Introduce init_data segment.
- New temp file creation implementation.
- Bart: added INT21/AH=53. XMSDSK works fine now.
- dynamic allocation of Drive Parameter Blocks (they are
- all FAR now).
- + Update Bart: moved DOS_PSP to segment 0x60 as segment 0x50 is already used by
- GWBASIC/BASICA
-
- 2001 Apr 2 - Build 2023
- -------- Bart Oldeman (bart@dosemu.org)
- + Fixes Bart: Volkov Commander revealed a few bugs:
- -int 21/ah=55 forgot to set current psp to child psp.
- -memory allocation: mem_access_mode was a signed byte, and hence 0x80 was
- translated to 0xff80 and not 0x0080 when converting to a COUNT. Hence
- changed it to become a UBYTE.
- -An error in memmgr.c: search again in low mem for modes 0x80,81,82, not
- 0x40,0x41,0x42
- * execrh.asm & int2f.asm: made code executable on a 8088 (no push
- constant)
- * entry.asm: made sure dos_crit_sect is executed when required to.
- * Another redirector fix. int 2f/1122 needed DS=current psp. This caused a
- bug for me: after compiling FreeCOM on a redirected drive "dir" did not
- work any more.
- * The nansi.sys problem: as it was, the initialisation phase of nansi
- called int/ah=30, which checked control-break, which checks the console
- driver, which at that point is the still not initialized nansi. This
- messed up the request header passed to it. A solution I found is to link
- a device into the device chain _after_ initialisation, not before.
- * Redirector fix: network.c uses fmemcpy instead of fsncopy.
- * Fixed INT 21/AH=6 (direct console input).
- Tom:
- * DE_NFILES instead of DE_FILENOTFOUND to allow Volkov Commander to browse empty
- drives.
- * Fixed bug wrt zero terminated device names (should be spaces terminated).
- 2001 Mar 30 - Build 2023
- -------- Bart Oldeman (bart@dosemu.org)
- + Fixes Tom: Kernel alloc initialises to 0. This avoids some weird errors.
- Implemented default divide by 0 handler (INT 0)
- FILES= fixes from config.sys. fatfs.c ignored it and always
- used the default of 16.
- Misc debug code removal.
- int 21/ax=3306 report running HIGH fix.
- int 21/ah=69 : save CX
- InitializeAllBPBs() or MakeNortonDiskEditorHappy()
- More extended information if MCB chain corruption occurs.
- Bart: getdpb fixes (int 21/ah=32).
- fix carry handling in int 21/ah=5e.
- fix {get,set}_machine_name in network.c
- saner lastdrive handling
- + Add Support for SHELLHIGH in config.sys
- 2001 Mar 28 - Build 2023
- + Fixes Bug fix release 2023b: dsk.c (reported by Nagy Daniel), inthndlr and
- int25/26 fixes by Tom Ehlert.
- 2001 Mar 27 - Build 2023
- -------- Bart Oldeman (bart@dosemu.org)
- + Fixes Bug fix release 2023a: fixed stack segment bug in entry.asm.
- 2001 Mar 25 - Build 2023
- -------- Bart Oldeman (bart@dosemu.org)
- + Fixes sys.com compilation: it is a proper .com and works again.
- Suggestions from Martin Stromberg: warning removal and some
- debugging related changes.
- Suggestion from Aitor Santamaria Merino: implemented NUMLOCK=ON/OFF
- in config.sys. Also implemented strcasecmp.
- Updated intfns.txt; reported version is now 5.0.
- 2001 Mar 24 - Build 2022
- -------- Bart Oldeman (bart@dosemu.org)
- + Fixes Tom and Bart: cli/sti handling and other fixes in entry.asm,
- procsupt.asm and apisupt.asm.
- Bart: warning removal + other compile time fixes.
- Tom: * more partition detection fixes in dsk.c.
- * dos_gettime() fix.
- 2001 Mar 21 - Build 2022
- -------- Bart Oldeman (bart@dosemu.org)
- + Clean A lot of space savings by Tom Ehlert, merely because Turbo C 2.01 does not
- do it. And several more complicated situations as well, like coding some
- string functions in assembly (asmsupt.asm).
- + Add Tom Ehlert: support for DOS=HIGH. Now most of the kernel can be loaded into
- the HMA. This required a lot of segmentation changes. Let's hope the best
- of it. Support for device drivers with multiple devices.
- + Fixes From Tom Ehlert:
- task.c bug fix (image_size is in bytes)
- dosfns.c change dir to E:\FREEDOS\*.PRJ fix
- fcbfns.c fixes.
- break.c Ctrl-C Ctrl-C -> crash temporary fix.
- + Fixes From Bart:
- Let UMBs work again after HMA changes.
- Be able to compile sys.com again. Is now really a .exe file but still masks
- as .com in the hope that we can make it a real .com again.
- DeviceHigh loads low if there are not enough UMB's available.
- Fixed another redirector problem.
- + Update Optimized asmsupt.asm a bit with help of the glibc 2.2 source.
- + Fixes Tom Ehlert and Brian Reifsnyder: fix partition detection in dsk.c +
- other bug fixes (also: floppy.asm).
- + Update Tom Ehlert optimized blockio.c.
- + Fixes a few small ones from Tom I forgot.
-
- 2001 Mar 08 - Build 2022
- -------- Bart Oldeman (bart@dosemu.org)
- + Fixes MCB chain corruption fix (thanks Tom Ehlert and Martin Stromberg)
- Redirector fixes (CDROMs and DOSEmu lredir'ed drives appear to work fine now)
- UMB fixes
- Various recodings (dsk.c, prf.c, portab.h) to make kernel
- object footprint 3k smaller (Tom Ehlert)
- Fix handling of very long path names (Tom Ehlert)
- FindFirst/FindNext fixes (Tom Ehlert)
- Configuration for libm.mak is in config.mak (Martin Stromberg)
- NLS fix to include pointer to CharMapSrvc. Note: these are
- changes to automatically generated .asm files, but the
- generator (GRAB_UNF.EXE) is missing. (thanks Tom Ehlert)
- DosSelectDrv fix (Martin Stromberg)
- config.c always converts to upper case and handles dos=umb correctly
-
- 2000 Dec 15 - Build 2022
- -------- James Tabor (jimtabor@infohwy.com)
- + Fixes Added Patches from Bart Oldeman (bart@dosemu.org)
- Fix for NLAST in globals.h and change default return in inthndlr.c.
-
- 2000 Oct 29 - Build 2022
- -------- James Tabor (jimtabor@infohwy.com)
- Rebuild local cvs tree after a crash. Update CVS at Sourceforge.net
- with changes.
-
- 2000 Sep 04 - Build 2022
- -------- James Tabor (jimtabor@infohwy.com)
- + ADD Adding Ron Cemer patch for Share support!
-
- 2000 Sep 04 - Build 2022
- -------- James Tabor (jimtabor@infohwy.com)
- + Fixes Brian Reifsnyder (reifsnyderb@mindspring.com)
- Modified dskxfer() such that error codes are now returned.
- Functions that rely on dskxfer() have also been modified accordingly.
- Modified interrupts 0x25 & 0x26 to return more accurate error codes.
- Updated dskxfer() prototype.
-
- 2000 Aug 15 - Build 2022
- -------- James Tabor (jimtabor@infohwy.com)
- 2000/08/12 22:49:00 Ron Cemer (roncemer@gte.net)
- Fixed writeblock() to only use getbuf() if writing a
- complete sector; otherwise use getbloc() and do a
- read-modify-write to prevent writing garbage back
- over pre-existing data in the file.
- This was a major BUG.
-
- 2000 Aug 05 - Build 2021
- -------- James Tabor (jimtabor@infohwy.com)
- Clean up and finish umb code to get 2021 out.
-
- 2000 Jul 26 - Build 2021
- -------- James Tabor (jimtabor@infohwy.com)
- + Fix New patch from Ron IsDevice and truename fix.
-
- 2000 Jul 14 - Build 2021
- -------- James Tabor (jimtabor@infohwy.com)
- + Add Added NLS patches from Steffen Kaiser and patch from Ron
- (roncemer@gte.net).
-
- 2000 Jun 25 - Build 2021
- -------- James Tabor (jimtabor@infohwy.com)
- + Add Add and Fix support for UMB's.
-
- 2000 Jun 20 - Build 2021
- -------- James Tabor (jimtabor@infohwy.com)
- + Fix Bart Oldeman (bart@dosemu.org) found bugs with copy
- command using Dosemu Lredir. Fixed Dosfns return for ReadCount,
- WriteCount and DosGetFattr. Fixed the return in int2f.asm for
- Read/Write Remote. By adding xor ax,ax.
- I found some more return bugs in int2f.asm after adding Barts
- patch.
-
- 2000 Jun 08 - Build 2021
- -------- James Tabor (jimtabor@infohwy.com)
- + Add Started the UMB code. Devicehigh and dos=umb only works with
- Dosemu for now.
-
- 2000 Jun 07 - Build 2021
- -------- James Tabor (jimtabor@infohwy.com)
- + Add Int2f added code for Fastopen call.
- Now MSD Scandisk works!
-
- 2000 Jun 06 - Build 2021
- -------- James Tabor (jimtabor@infohwy.com)
- + Add Dos Func 0x59 and found a redirector bug in fncfns.c.
-
- 2000 Jun 01 - Build 2021
- -------- James Tabor (jimtabor@infohwy.com)
- + Fix Lastdrive is a real number 1 thru 26 not 0 thru 25.
- + Fix Ioctl and Dsk did not return the currect AX for Ioctl calls.
-
- 2000 Jun 01 - Build 2021
- -------- James Tabor (jimtabor@infohwy.com)
- + Clean Removed test prinf statements in source.
- * Thanks to Lixing Yuan for pointing out an copy to root error.
-
- 2000 May 31 - Build 2021
- -------- James Tabor (jimtabor@infohwy.com)
- + Patch Lixing Yuan (yuanlixg@china.com) Patch for parsing bug in
- FindFirst with wildcards -> ParseDosName (dosnames.c).
-
- 2000 May 28 - Build 2021
- -------- James Tabor (jimtabor@infohwy.com)
- + Added Open/Close/Media check to dsk.c and io.asm.
- + Fixed Device checking in truename. Truename needs to be rewriten.
-
- 2000 May 26 - Build 2020
- -------- James Tabor (jimtabor@infohwy.com)
- Code Clean up and Now the Release.
-
- 2000 May 26 - Build 2020
- -------- James Tabor (jimtabor@infohwy.com)
- + Fixed IsDevice is used in FcbFns.c and DosFns.c. I removed IsDevice
- from DosNames.c an placed it in DosFns.c. FcbFns had dup code
- and it was removed. This fixed all the functions using IsDevice.
-
- Truename works now. I consider it dangerous and brain damaged.
- Note:
- truename X:\DIR\con -> X:/CON, note the '/'.
- truename foo*.* -> X:\DIR\FOO?????.???
- truename *.*\*.*\*.* -> ????????.???\????????.???\????????.???
- truename *.*\*.**\*.* -> endless Loop
- I will fix this later ;^)
-
- Found InitPSP running 3 time. On the 2'nd run the standard handles
- were closed with out DosClose. Now Device Drivers can Print out
- there startup info.
-
- + Added New IOCTL code in Dsk.c.
-
- 2000 May 26 - Build 2020
- -------- James Tabor (jimtabor@infohwy.com)
- + Fix Kolyan Ksenev (7207@mx.csd.tsu.ru) (nik0la@acm.org)
- found Major bugs in Task.c and chario.c.
-
- 2000 May 25 - Build 2020
- -------- James Tabor (jimtabor@infohwy.com)
- + Fixed Project history.
-
- 2000 May 17 - Build 2020
- -------- James Tabor (jimtabor@infohwy.com)
- + Fixed Delete, Rename, Mkdir, and Rmdir. Comment out isDevice. There is
- a serious bug in isDevice.
- + Added Finished adding function code for disk serial number support.
- + Clean Cleaned up source and removed duplicate functions.
-
- 2000 May 14 - Build 2020
- -------- James Tabor (jimtabor@infohwy.com)
- + Clean Cleaned out the remaining CR's.
-
- 2000 May 08 - Build 2020
- -------- James Tabor (jimtabor@infohwy.com)
- + Update Started Update to the New CVS at Sourceforge.net. Setting source
- from 2018 to 2020.
-
- 2000 May 06
- -------- Jim Hall (jhall1.isd.net)
- + Import Jim Hall imported the CVS from gcfl.net to Sourceforge.net.
-
- 2000 Apr 28 - Build 2020
- -------- James Tabor (jimtabor@infohwy.com)
- + Added Dos Function calls 0x69, and 0x6C. IOCTL support in disk driver.
- New functions not yet fully implemented.
- Clean up DSK.C, IOCTL.C and FCBFNS.C. Removed old blk_device
- pointers.
-
- 2000 Apr 03 - Build 2020
- -------- James Tabor (jimtabor@infohwy.com)
- + Fixed All DPB chains were linking to -1.
-
- 2000 Apr 02 - Build 2020
- -------- James Tabor (jimtabor@infohwy.com)
- + Fixed Dos_Free returned wrong due to MaxCluster Calc.
- Media_Check MaxCluster count wrong, needed +1.
-
- 2000 Apr 01 - Build 2020
- -------- James Tabor (jimtabor@infohwy.com)
- + fixed Unable to cd back out of cdrom directories.
-
- 2000 Mar 31 - Build 2019
- -------- James Tabor (jimtabor@infohwy.com)
- + added Eric W. Biederman patches via CVS.
-
- + 2000 Mar 25
- + -------- Eric Biederman
- + Fixed Lastdrive handling
- + Fixed Not enough drives for number present devices
- + Added Working (though not perfect network redirector)
- Note: Error codes internal to freedos are negative
- Error codes external to freedos are postive.
- The network redirector is external to freedos...
- Note: Running the nonredirected functions on a redirected
- drive is dangerous. My patch is very careful
- not to. Except in truename. Where (a) it is safe
- and (b) I think it is required, and (c) it is needed
- by dosemu.
-
- 2000 Mar 19 - Build 2019
- -------- James Tabor (jimtabor@infohwy.com)
- * Jean-Francois <lozevis.jeanfrancois@free.fr> email noting
- the set/clear interrupt was reverse in order.
-
- 2000 Mar 17 - Build 2019
- -------- Steffen Kaiser (Steffen.Kaiser@fh-rhein-sieg.de)
- + Fixed Config.c COUNTRY= statement
- + Fixed *.c to call upFMem() when upcasing filenames
- - Removed everything to load NLS into memory
- = Redesigned hardcoded NLS information
-
- --> The kernel will now return the proper information for the
- hardcoded NLS (U.S.A. / CP437), it would return the correct
- information for other NLS, too, if there would be a NLSFUNC
- available, which is not at this time.
-
- NOTE: The way the external NLSFUNC is called does not look well,
- therfore expect a change soon.
-
- 2000 Mar 15 - Build 2019
- -------- James Tabor (jimtabor@infohwy.com)
- * Dennis Newbold and Massimo De Munari email kernel bug reports
- with changes to Globals.h and Inthndlr.c. Fix to leap year and
- Delete file return code.
- * Michal Meller found a bug in media_check. It return the wrong
- value of sector count. Change in FATFS.C.
- * Fixed Func 0x32 based on information from Marty <k3pbu@arrl.net>.
- Func 0x32 Get Drive Parameter BLK did not work.
-
- 2000 Mar 09 - Build 2018
- -------- James Tabor (jimtabor@infohwy.com)
- Added CDS and made FD CDS based. Changes encompass all of the
- code for FD.
- Fixed Task.c, rewritten code from FINODE to SFT function calls.
- Unable to execute from CD. Main.c and Config.c has small
- changes.
- Fixed Device drivers are unable to write to con. Rewritten code to
- relocate DOS_PSP pointer to 050:0000. Removed references to
- DOS_PSP in DosFns.c.
- Added Network and Redirection function calls in Inthndlr.c and
- network.c.
-
- I have a note in FatFs.c line 313, describing functions not yet
- supported for networking. I don't understand Pats thoughts on SFT to
- FINODE. IMHO it would have been easier to stay with SFT all through
- the code.
-
- I tested MS-Dos 6.22 Command and found it unable to do Find First or
- Next. This too could explain why MSCDEX does the same thing. I only
- test this with the current FDCommand at the time, so this could have
- changed.
-
- 1999 Sep 24 - Build 2017
- -------- John Price (linux-guru@gcfl.net)
- * Per Jens Horstmeier's email, changed boot sector code to make
- Siemens CDROM's bootable. The changes should be OK for all other
- machines too (in theory).
-
- 1999 Sep 22 - Build 2016
- -------- John Price (linux-guru@gcfl.net)
- * Turned off debug output from the kernel. It does not seem to be
- necessary at this time.
- * Changed boot sector to do single-sector reads instead of
- multi-sector reads. Appearantly this was part of the reason the
- kernel would not boot from a 720K, or other format floppies. Thanx
- to Charles Dye for the info.
-
- 1999 Sep 16 - Build 2016
- -------- James Tabor (jimtabor@infohwy.com)
- * Added Networking and Server Call
- * Added Dos Idle call
- * fixed Console.asm ConInStat
-
- 1999 Sep 13 - Build 2014
- -------- John Price (linux-guru@gcfl.net)
- * Deleted some files from the drivers directory that were not being
- used.
- * Changed the LIB.MAK file so it would work for TC2 or TC3 or higher.
- * Changed SYS.COM so that it creates a sys.log file with more debug
- information to help debug problems with making boot disks.
-
- 1999 Sep 13 - Build 2014
- -------- James Tabor (jimtabor@infohwy.com)
- * Submitted changes to CONSOLE.ASM & INTHNDLR.ASM to fix the INT21
- func 0B bug.
-
- 1999 Sep 13 - Build 2014
- -------- Helmut Fritsch (helmut.fritsch@gcd-hs.de)
- * Submitted changes to CONSOLE.ASM to fix the INT21 func 0B bug.
-
- 1999 Sep 10 - Build 2014
- -------- ror4 (f2xm1@crosswinds.net)
- * At the suggestion of Mr John Price, modified the int 0x25 and int
- 0x26 so that they no longer update the disk buffers (int 0x26 only
- invalidates the buffers for the specified drive). This is to avoid
- inconsistent disk buffers from appearing in the buffer chain due to
- interactions between int 0x25/0x26 and file read/write operations.
-
- 1999 Aug 24 - Build 2013
- -------- John Price (linux-guru@gcfl.net)
- * With ideas from ror4, I redid the build batch file so you can
- specify where what make to use.
- * Also created CONFIG.M and CONFIG.B which should be copied to
- CONFIG.MAK and CONFIG.BAT, respecively, and edited to reflect the
- users configuration. This keeps new versions from replacing the
- configuration files so the user does not have to keep reseting
- their configutation.
-
- 1999 Aug 15 - Build 2013
- -------- ror4 (ror4@angelfire.com)
- * Patched the source so that it can be compiled with Turbo C 2.01.
- (`asm' statements were rewritten into very ugly equivalents... they
- probably need more work. :( )
- * Modified the `dmatch' structure in `hdr/dirmatch.h' so that the
- `dm_dirstart' field is in the right place, and also to make it
- compile under TC 2.01, which doesn't allow bit fields of any types
- other than signed or unsigned int.
- * Fixed a few minor bugs in error code returning in `kernel/fatfs.c'.
-
- 1999 Jul 16 - Build 2012
- -------- ror4 (ror4@iname.com)
- * Finally ported all the assembly modules to `nasm'. *phew*
- * Undid plonee's patches to `kernel/fatfs.c' (sorry). They were
- causing the resulting findfirst/findnext DTA structures to be
- incompatible with MSDOS's.
- * Also rewrote all the pattern copying code in `dos_findfirst' in
- `kernel/fatdir.c' to prevent a bad buffer overflow problem.
- * Modified the disk buffer handling code, so that logical sector
- numbers in disk buffers are now 0-based instead of 1-based.
- * int 0x25 and int 0x26 now do multi-sector reads/writes.
-
- 1999 Jul 14 - Build 2012
- -------- ror4 (ror4@iname.com)
- * Ported the modules in the `drivers/' branch to `nasm'.
-
- 1999 May 04 - Build 2011
- -------- ror4 (ror4@cryogen.com)
- * Fixed the code for converting day numbers into Julian calendar
- dates: the first and last days of each month are now returned
- correctly.
- * Undid a change to the code to get the day of the week.
-
- 1999 May 02 - Build 2011
- -------- John Price (linux-guru@gcfl.net)
- * blockio.c: changed getblock and getbuf so that they leave at least
- 3 FAT type buffers valid. This helps because the FAT is accessed
- very often compared to other sectors.
- * fatfs.c: Fixed a bug in map_cluster so it will optimize FAT reads
- on disks that have more than one sector per cluster. This
- sigificantly improved disk access of big files on hard drives.
-
- 1999 May 02 - Build 2011
- -------- ror4 (ror4@cryogen.com)
- * Corrected the `struct buffer' definition in `kernel/globals.h' so
- that it corresponds exactly to Ralf Brown's description of a DOS 3.x
- buffer.
- * Also fixed the problem with FATs > 255 sectors, by making use of an
- originally unused field in the buffer structure.
-
- 1999 May 01 - Build 2011
- -------- ror4 (ror4@cryogen.com)
- * Fixed a problem which caused disk corruption on partitions with
- FATs larger than 127 sectors. (However, FATs larger than 255
- sectors may still experience problems -- this is due to a
- limitation of the DOS 3.x buffering scheme.)
- * Fixed a bug in the handling of the `stacks=' command in
- `(fd)config.sys' which caused the system to behave strangely.
-
- 1999 Apr 22 - Build 2011
- -------- Steffen Kaiser (Steffen.Kaiser@fh-rhein-sieg.de)
- bugfix: memmgr.c: Invalid returned largest size in MemLargest()
- fix: memmgr.c: DosMemLargest: change prototype to match its useage
- bugfix: inthdlr.c: 0x49: ES is decremented
- fix: inthdlr.c: 0x00: DosMemCheck() does nothing --> added panic()
- fix: inthdlr.c: 0x4c: DosMemCheck() does nothing --> added panic()
- fix: inthdlr.c: 0x00: changed to make it the same as DOS-4C-00
- Both actions differed e.g. in ErrorMode
- chg: memmgr.c: the 'name' field of the MCB is never initialized by
- DOS-48, DOS-49 or DOS-4A. Leave this to the program loading function.
- bugfix: memmgr.c: adjust_far() / add_far():
- Both function together (and the way they are used) don't make sense:
- adjust_far() normalizes a far pointer, add_far() generates a linear
- address. Usually both are used this way:
- far_poi = adjust_far(far_poi);
- while(...) {
- ...
- far_poi = add_far(far_poi, uword);
- ...
- }
- First one makes sure that 'far_poi' is normalized, then far_poi
- becomes a linear address, which makes it very difficult to use
- it, because the possibility to get a segment warp gets very high.
- -->
- Change: add_far() also returns a normalized real mode pointer
- as adjust_far() does.
- Probably in DOS-C supporting various architecures thee functions
- served other duties, but the current useage is highly dangerous.
- bugfix: task.c: ChildEnv(): nEnvSize didn't counted the last '\0'
- bugfix: task.c: ChildEnv(): Allocation: maximum absolute filename to
- short and forgot the word counter
- bugfix: task.c: ChildEnv(): for very corrupt environments, the
- copy function failed.
- bugfix: task.c: DosExeLoader(): If exe_size > allocated_size or
- DosMemLargest() failes, the environment is not deallocated
- bugfix: task.c: DosExeLoader(): Calculating the exe_size to be
- allocated. At both places (+ header.exMinAlloc & ...MaxAlloc)
- sizeof(psp) is added to exe_size. Why? image_size already
- contains sizeof(psp).
- chg: task.c: DosExeLoader()/DosComLoader(): MCB patching and command
- line copying is no outside of those functions
- chg: asmsupt.asm: _fbcopy: re-use parts of _bcopy
- add: asmsupt.asm: fmemset, fmemclr, fmemclra {Replace the explicit
- for() loops}
-
- 1999 Apr 22 - Build 2011
- -------- ror4 (ror4@cryogen.com)
- * Ported boot.asm to NASM. The plan is to port all assembly to NASM
- over time.
-
- 1999 Apr 19 - Build 2010
- -------- John Price (linux-guru@gcfl.net)
- * Undid the change I made to getblock below because it DID NOT speed
- anything up, and in fact slowed access down.
-
- 1999 Apr 18 - Build 2009
- -------- John Price (linux-guru@gcfl.net)
- * change getblock so that it flushes all buffers for a drive when it
- has to flush one of them to make room. This should speed disk
- access slightly.
- * Change the boot sector so there is a compile-time option to use
- multi-sector IO or single-sector IO. The default is multi since
- ror4 seemed to have fixed the problem we had before.
-
- 1999 Apr 18 - Build 2009
- -------- ror4 (ror4@cryogen.com)
- * The boot sector can now load the kernel properly from a hard disk.
- * Other minor changes.
-
- 1999 Apr 16 - Build 2008
- -------- ror4 (ror4@cryogen.com)
- * Modified the block device driver to prepare it for multi-sector I/O
- support. Among other things, the driver can now handle transfer
- buffers which cross DMA boundaries.
- * Some other minor changes.
-
- 1999 Apr 15 - Build 2008
- -------- John Price (linux-guru@gcfl.net)
- * Changed mainly the map_cluster function in fatfs.c so that instead
- of starting at the beginning of the FAT chain every time, it will
- be smart about it, and start at the last FAT location that it was
- before if it can. This speeds up disk access considerably
- especially on slower machines.
-
- 1999 Apr 15 - Build 2008
- -------- Steffen Kaiser (Steffen.Kaiser@fh-rhein-sieg.de)
- bugfix: ^Break handler according cmt1.txt
- bugfix: DosCreat(): Detection for Devices and extension:
- the semi-colon behind if(*froot) is definitely wrong, whether
- one wants CON.EXT to be interpreted as CON or not.
- bugfix: DosOpen(): dito
-
- * Re-implementation of ^Break handler -- 1999/03/27 ska
- + Warning: The handle_break() function assumes that the InDOS flag
- was incremented (except if ErrorMode is true). Never call
- handle_break() unless the InDOS flag has been incremented within
- this reentrant call of DOS.
-
- + ^Break is detected and handled at certain places within the
- kernel only: a) within the CON: device when reading or writing a
- character, and b) when entering the INT-21 service (if extended
- break checking is enabled). At these places the process flow can
- be modified to: either a) redo the interrupted function or b) abort
- the currently running process.
-
- + Both actions are performed by switching back to the user stack
- and enter INT-21 handler again. If to terminate the program, AX is
- modified into 4C00h.
-
- + By default, if the user has no ^Break handler installed, the
- program is terminated.
-
- + Heavy change: The original implementation installed an unique
- INT-23 handler that directly called the actions performed
- DOS-4C-XX. In fact, this was identically with when the user had an
- own handler installed and returned the Carry flag set, except that
- it was somewhat quicker, because the kernel need not decode the
- 4C00h command. Now the Carry flag is set prior the call of INT-23,
- so the default action is to terminate the program.
-
- + Note: INT-23 is called with all registers as they are passed to
- the INT-21 entry. When they are modified, they are passed
- _modified_ to the API interpreter. This also allows the DOS1-style
- termination by to load register AH with 0 (zero).
-
- + RBIL says:
- "any DOS call may safely be made within the INT 23 handler,
- although the handler must check for a recursive invocation if it
- does call DOS"
- This can be interpreted so or so, the problem is that the user can
- call DOS again, what would overwrite the saved _usr_stack pointer
- with a different value and, therefore, cannot be used to check if
- INT-23 was returned by RETF or RETF2/IRET.
-
- Because a recursive invokation of INT-23 is to prevented by the
- user, the kernel could internally save SP to somewhere else.
- However:
- a) where?
- b) is it reliable that the user ever returns from INT-23 at all?
-
- The implemented method uses the same mechanism as fail-safe intr()
- function is implemented: A little piece of code is constructed
- within the stack, which contains the value of SP as an operand of
- an immediate MOV instruction.
-
-
- 1999 Apr 13 - Build 2007
- -------- ror4 (ror4@cryogen.com)
- * The boot sector now moves itself to the last 512 bytes of
- conventional memory instead of a lower memory location.
- * The kernel startup code has also been modified so that it works
- with the new boot sector.
-
- 1999 Apr 12 - Build 2007
- -------- ror4 (ror4@cryogen.com)
- * The directory scanning functions (`findfirst'/`findnext') now also
- recognize more flavours of the volume label attribute byte (namely
- 0x09, 0x28 and 0x29).
- * Subdirectories are now no longer assumed to have the same size as
- the root directory.
- * `device/device.lib' is now included as a dependency in the kernel
- makefile.
- * Removed several unused assembler modules from the `device/' branch
- (see `device/device.mak').
-
- 1999 Apr 11 - Build 2007
- -------- ror4 (ror4@cryogen.com)
- * The kernel now reads times from the system clock (0x40:0x6c)
- instead of the RTC. The RTC is only used during startup to
- initialize the system clock. (As a side effect of this,
- `ReadATClock' has been moved from `_TEXT' to `INIT_TEXT'.)
- * Checking for leap years is now improved -- year numbers which are
- divisible by 100 but not by 400 are not counted as leap years. (Not
- that it matters for year 2000, though.)
- * The scaling factor used to convert the system time count to a
- second count has been changed from 18.2 to the more accurate (?)
- 19663/1080.
- * Day numbers used by `clock$' are now 0-based (as in MSDOS) instead
- of 1-based. Thus 1 Jan 1980 is now day number 0.
-
- 1999 Apr 10 - Build 2007
- -------- ror4 (ror4@cryogen.com)
- * Added code to prevent the kernel from returning path names
- containing double backslashes.
-
- 1999 Apr 9 - Build 2007
- -------- ror4 (ror4@usa.net)
- * File handles are now cloned properly when a child process is spawned.
- * The `DosClose' function now also frees SFT entries corresponding to
- devices, not only those entries corresponding to files.
- * Removed a (minor) memory corruption bug in the code for int 0x21,
- ah = 0x09.
-
- 1999 Apr 6 - Build 2007
- -------- ror4 (ror4@cryogen.com)
- * Functions ax = 0x5700 and 0x5701 (get/set file date and time) now
- return the right values at the right times. (They used to return
- success when there's an error, and return error when there's a
- success.)
- * Removed the `/k' switch to the linker in `sys/sys.mak'.
-
- 1999 Apr 4 - Build 2006
- -------- John Price (linux-guru@gcfl.net)
- * added "version=" directive so that you can change the version that
- the kernel reports. Usage: version=<major>.<minor> (i.e.
- version=6.22)
-
- 1999 Apr 4 - Build 2006
- -------- ror4 (ror4@usa.net)
- * Fixed the file name parsing function (`ParseDosNames') so that it
- handles single-character path names correctly.
- * Also modified the functions which call `ParseDosNames' to check its
- return value instead of assuming that it is always successful.
- (This is not currentl useful, but it will be when error checking is
- introduced into `ParseDosNames'. In other words, there'll be more
- changes to `ParseDosNames' in the near future...)
-
- * After wondering for a long time why the kernel text segment was
- always getting corrupted when I ran DJGPP `bash' 1.14.7, I finally
- decided to examine the code occurring before the handler for int
- 0x21, ah = 0x60, and I found out why... :)
- * Fixed the problem of int 0x21, ax = 0x5d06 causing memory
- corruption.
- * Corrected the types of `internal_data', `swap_always' and
- `swap_indos' in `kernel/globals.h'.
-
- * Improved checking for invalid file names in `ParseDosName'
- (although I'm still not sure whether the check is water-tight or
- not).
- * Changed the default path setting from `PATH=' to `PATH=.'.
-
- * Output from character I/O functions now goes to standard output as
- it should, instead of the console. Also, there's now a clear
- distinction between console input/output and standard input/output.
- * Tabs are now expanded during writes to the console device.
- * Removed a hard-wired limit on the number of entries in a JFT.
- (Although I'm not sure whether this is really correct...)
- * Many other changes to the file descriptor handling code.
-
- 1999 Mar 29 - Build 2006
- -------- John Price (linux-guru@gcfl.net)
- * Changed boot loader so it prints some feedback info while booting.
- Removed code to handle FAT12 and FAT16, and code to calculate the
- start of the fat, rootdir, and data. Moved these functions into
- the sys command. Now there are two versions of the boot loader
- created, one to handle FAT16, and one for FAT12. These are
- hard-coded into the sys command, so the need for the boot.bin file
- is obsolete.
- * created a new program (bin2c) to convert the boot loader binary
- file into a header file that can be included in the sys program as
- an array of bytes.
-
- 1999 Mar 29 - Build 2006
- -------- ror4 (ror4@usa.net)
- * Changed the class of `_BSSEND' from "STACK" to "BSS" in the
- `drivers/' branch (which I forgot about in my last patch).
- * Removed all traces of the `CONST' segment, since it was causing
- `IGROUP' to be assimilated into `DGROUP', which shouldn't happen.
- * Added a `(void)' cast to the `setvec' macro in `kernel/globals.h'
- (`setvec' no longer returns the original ISR vector).
- * Changed an incorrect error message in `sys/sys.c'.
- * Removed `drivers/setvec.asm', since it's no longer needed.
- * Also removed `kernel/krnstart'.
- * The name field in a process's MCB is now filled in the same manner
- as in MSDOS -- instead of being padded to the right with spaces, it
- is now terminated with '\0'. Also, if the original file name
- doesn't have an extension, the code will stop copying the file name
- at '\0' instead of continuing to look for a '.'.
- * Fixed the problem of the `switchar' syscall (int 0x21, ax = 0x3700) not
- returning the correct value.
-
-
- 1999 Mar 28 - Build 2005
- -------- ror4 (ror4@usa.net)
- * Removed the need for `ipl.sys'. (!) The kernel makefile now
- statically relocates `kernel.exe' to 0x60:0 and outputs the
- resulting binary to `kernel.sys', and the boot sector has also been
- modified to load `kernel.sys' at 0x60:0 instead of `ipl.sys' at
- 0x2000:0. (I chose 0x60:0 because it's the first 512-byte boundary
- occurring after the BIOS data area, 0x40:0.) Finally, `sys.com' has
- also been updated.
-
- * Also changed the boot sector code in some other ways. In
- particular, because `kernel.sys' is rather large, I had to add some
- code to move the boot sector away from 0:0x7c00 to somewhere
- higher. (For 640K systems the boot sector will be shifted to
- 0x6000:0x7c00. However, there may be problems on systems with very
- little conventional memory -- I'll probably look into this later.)
-
- * Made some minor changes to the assembler source files so that they
- can compile on `masm'. (JP: The code still compiles fine with tasm
- too).
-
- * Also changed several incorrect label references in the assembler
- sources. (JP: These changes fixed the "Fixup" errors we been
- talking about in the list)
-
- * Eliminated redundant re-makes of files in the various makefiles.
- For one thing, `*.cfg' files are no longer generated from the
- makefiles, but are independent from them. (I didn't like the idea
- of having to compile an entire branch each time I edit a
- makefile...) Also, intermediate files are now retained instead of
- deleted.
-
- * Also made some changes to `build.bat' (you'll know them when you
- see them).
-
- * Added a file `lib/libm.mak'
-
- * Added a file `kernel/krnstart
-
- * The code required to initialize the kernel (or rather most of it)
- is no longer retained in memory after the initialization process is
- done. I accomplished this by moving most of the initialization code
- from `_TEXT' to a new segment named `INIT_TEXT'. Of course, I also
- had to introduce lots of other changes in order for everything to
- compile and run properly:
- - Added code to `kernel/src/kernel/kernel.asm' to move the contents
- of `INIT_TEXT' to the top of conventional memory and continue
- from there. Control is only transferred back to `_TEXT' when the
- kernel calls `p_0'.
- - Many functions are called from both `_TEXT' and `INIT_TEXT'. To
- fix this, I created far wrappers for these functions which can
- then be called from `INIT_TEXT'. (E.g. for `execrh' there's a
- corresponding far function named `init_call_execrh' which simply
- calls `execrh' with its own parameters.) One exception to this is
- `printf' -- instead of creating a far wrapper for a near
- `printf', I created a near wrapper for a far `printf' (now called
- `init_call_printf'), because it was easier that way. :)
- - Most functions which are required only during initialization time
- were shifted into `INIT_TEXT'. (There are still some functions
- which should rightfully go into `INIT_TEXT', but are retained in
- `_TEXT' as far functions, because I found it too difficult to
- move them out. :( ) Because Turbo C only allows at most one code
- segment to be defined for each module, I had to shift some
- functions around within the source tree -- the file
- `kernel/src/kernel/proto.h' says it all.
- - A cosmetic change mentioned here for completeness: all functions
- defined in `INIT_TEXT' are now marked with the word `INIT' (in
- fact a null macro) so that the reader can easily distinguish them
- from functions defined in `_TEXT'.
-
- * Replaced `exit' calls with `for (;;);'.
-
- * Changed `strcpy' into a macro which calls `scopy'.
-
- * Also redefined `setvec' to be a macro (I didn't want to waste time
- writing a far wrapper for it).
-
- * Removed the `break_key' function in `kernel/src/kernel/kernel.asm'.
-
- * `low_int25_handler' and `low_int26_handler' are now of type
- `void interrupt far()' instead of `void near()'. (I hope I updated
- `entry.asm' correctly -- I never tested `int 0x25' and `int 0x26'...)
-
- * Changed the class of `_BSSEND' from "STACK" to "BSS" -- "STACK" is
- now used for a separate stack segment (`_STACK').
-
- * Assembler modules now include `segs.inc' instead of having their
- own long list of segment definitions. (Some day I'll update the
- makefile dependencies to reflect this.)
-
- * Also made a few minor changes to the assembler modules so that
- `masm' won't complain.
-
- * Changed the `-X' switch in `kernel.cfg' to `-X-', so that I don't
- have to worry about C module dependencies.
-
- * Removed the definition of `CFLAGS' from the makefile -- everything
- is now in `kernel.cfg'.
-
- * Created a file `kernel/src/kernel/init-mod.h' which is included by
- modules whose code is supposed to go into `INIT_TEXT' instead of
- `TEXT'.
-
- * This diff solves the problem of the MCB of a process not having a
- correct value in its name field (bug report #6).
- (The definition of the `toupper' macro is because I shifted the
- `toupper' function into `INIT_TEXT' a while ago, and therefore
- can't be called from `_TEXT' now...)
-
-
- -------- John Price (linux-guru@gcfl.net)
- * Made changes so you can create a directory with the same name as a
- volume label, but you still can't rename or delete it!
-
- * Fix findfirst and findnext functions so that act as they should.
- (i.e. If the attrib has only the volume label set, then it returns
- the volume label entry in the root directory, else it returns the
- files/directories that are specified with the attrib, ignoring the
- read-only and archive bits (these are always returned).
-
- * reorginize the source tree. Removed IPL directory, and command.
- Moved all the file system C files into the kernel directory.
- Modifed build.bat, clean.bat, and all the make files to reflect the
- new tree.
-
- * changed so that kernel will look for a "fdconfig.sys" file, and use
- it INSTEAD of config.sys. If it does not find it, it will look
- for, and read config.sys, if it exists.
-
- * Fixed so that if you call an INT 21 function with AH containing a
- unsupported function, the carry flag is set.
-
- ----- older history, from rcs logs.
-
- 13 Nov 2002 tom
- initclk.c:
- Initial revision
-
- 2001/11/04 bartoldeman
- install.bat:
- Text files need to be LF ended at the server. So be it...
-
- 2001/04/29 brianreifsnyder
- dsk.c:
- Added phase 1 support for LBA hard drives
-
- 20 Apr 2001 Bart Oldeman
- buffer.h:
- Initial revision.
-
- 2001/04/16 bartoldeman
- dsk.c:
- Fixed handles, config.sys drivers, warnings. Enabled INT21/AH=6C, printf %S/%Fs
-
- 2001/04/15 bartoldeman
- dsk.c:
- See history.txt for the list of fixes.
-
- 2001/03/27 bartoldeman
- dsk.c:
- dsk.c (reported by Nagy Daniel), inthndlr and int25/26 fixes by Tom Ehlert.
-
- 2001/03/24 bartoldeman
- dsk.c:
- See history.txt: dsk.c changes, warning removal and int21 entry handling.
-
- 2001/03/22 bartoldeman
- install.bat:
- Change LF to CR/LF in batch files.
-
- 2001/03/21 bartoldeman
- dsk.c:
- See history.txt for changes. Bug fixes and HMA support are the main ones.
-
- 2001/03/16 tom ehlert
- inithma.c:
- initial creation
-
- 2001/03/08 bartoldeman
- dsk.c:
- Space saving fixes from Tom Ehlert
-
- 2001/03/07 10:00:00 tomehlert
- prf.c:
- recoded for smaller object footprint, added main() for testing+QA
-
- 2000/10/29 jimtabor
- inthndlr.c:
- Adding Share Support by Ron Cemer
-
- 2000/08/15 jhall1
- build.txt:
- update to the build.txt file to remove references to the now-defunct
- web site at gcfl.net (John's old site).
-
- 2000/08/06 jimtabor
- inthndlr.c, nls_load.c:
- Add new files and update cvs with patches and changes
-
- 2000/06/21 jimtabor
- dsk.c, inthndlr.c:
- Add UMB code, patch, and code fixes
-
- 2000/06/01 jimtabor
- dsk.c:
- Read History for Changes
-
- 2000/05/26 jimtabor
- dsk.c:
- Read History file for Change info
-
- 2000/05/25 jimtabor
- dsk.c, inthndlr.c:
- Fixed project history
-
- 2000/05/17 jimtabor
- dsk.c, inthndlr.c:
- Cleanup, add and fix source.
-
- 2000/05/11 jimtabor
- inthndlr.c:
- Removed #if statement
-
- 2000/05/11 jimtabor
- dsk.c, inthndlr.c:
- Added code for DOS FN 69 & 6C
-
- 2000/05/11 jimtabor
- install.bat, inthndlr.c:
- Clean up and Release
-
- 2000/05/08 jimtabor
- inthndlr.c, dosnames.c, dsk.c, dosnames.h, build.txt:
- Update CVS to 2020
-
- 2000/05/06 jhall1
- getvec.asm, dsk.c, inthndlr.c:
- The FreeDOS Kernel. A DOS kernel that aims to be 100% compatible with
- MS-DOS. Distributed under the GNU GPL.
-
- 2000/04/29 jtabor
- device.h, blockio.c, dsk.c, fatfs.c, inthndlr.c, ioctl.c:
- Added new functions and clean up code
-
- 2000/04/02 jtabor
- newstuff.c:
- Fix ChgDir Code
-
- 2000/04/02 jtabor
- dosfns.c:
- Replaced ChgDir Code
-
- 2000/04/02 jtabor
- dosfns.c:
- Fix to DosChgDir
-
- 2000/03/31 jprice
- sys.c:
- Added discription of program.
-
- 2000/03/31 jtabor
- config.c, dosfns.c, dosnames.c, fatdir.c, fcbfns.c, int2f.asm, main.c,
- makefile, network.c, newstuff.c, proto.h, task.c:
- Added Eric W. Biederman Patches
-
- 2000/03/23 ska
- nls.c:
- Initial revision
-
- 2000/03/20 kernel
- entry.asm:
- Change in Entry.asm
-
- 2000/03/18 kernel
- intfns.txt:
- changes in supported functions
-
- 2000/03/17 kernel
- config.c, fatdir.c, fatfs.c, fcbfns.c, inthndlr.c, makefile,
- network.c, nlssupt.asm, proto.h:
- Steffen Kaiser's NLS changes
-
- 2000/03/17 kernel
- inthndlr.c:
- Fixed Func 0x32
-
- 2000/03/17 kernel
- fatfs.c:
- Added Change for media_check
-
- 2000/03/16 kernel
- globals.h, inthndlr.c:
- *** empty log message ***
-
- 2000/03/09 kernel
- dosfns.c, dosnames.c, dsk.c, error.c, execrh.asm, fatdir.c, fatfs.c,
- fcbfns.c, globals.h, initoem.c, int2f.asm, inthndlr.c, io.asm,
- ioctl.c, kernel.asm, main.c, makefile, memmgr.c, misc.c, network.c,
- newstuff.c, prf.c, proto.h, strings.c, sysclk.c, task.c, blockio.c,
- break.c, chario.c, config.c, console.asm, cds.h, dcb.h, device.h,
- dirmatch.h, fnode.h, mcb.h, sft.h, stacks.inc:
- 2017f updates by James Tabor
-
- 1999/09/25 jprice
- boot.asm:
- Optimize boot loader. Documentation.
-
- 1999/09/24 jprice
- boot.asm:
- Added changes recommended by Jens Horstmeier
- to make their bootable CD work.
-
- 1999/09/23 jprice
- main.c, network.c, proto.h, globals.h, inthndlr.c, kernel.asm,
- makefile, config.c, console.asm, dosfns.c, entry.asm, fatfs.c,
- fcbfns.c, chario.c, boot.asm, fcb.h, sys/makefile, sys.c:
- *** empty log message ***
-
- 1999/09/20 jprice
- sys.c:
- Changed open/creat to fopen to make TC2 happy.
-
- 1999/09/15 jprice
- sys.c:
- Changed boot sector writing code so easier to read.
-
- 1999/09/14 jprice
- lib/makefile:
- no message
-
- 1999/09/14 jprice
- sys.c:
- Added debug log creation to sys.com.
-
- 1999/09/14 jprice
- console.asm:
- no message
-
- 1999/09/14 jprice
- inthndlr.c:
- ror4: fix int25 & 26 are not cached.
-
- 1999/09/14 jprice
- fatfs.c, dosfns.c:
- Fixed bug where you could write over directories.
-
- 1999/09/13 jprice
- inthndlr.c, console.asm:
- Fix 210B function
-
- 1999/09/13 jprice
- console.asm:
- Changes from Helmut Fritsch to fix INT21 func B
-
- 1999/09/13 jprice
- makefile:
- Some clean up.
-
- 1999/09/13 jprice
- config.b, config.b:
- Added COMPILER variable
-
- 1999/09/13 jprice
- lib/makefile:
- Added !if so we can use TC2 or TC3 to compile.
-
- 1999/08/25 jprice
- build.txt:
- update
-
- 1999/08/25 jprice
- config.b, clobber.bat, clean.bat, config.b, build.bat:
- New build batch files.
-
- 1999/08/25 jprice
- intfns.txt, build.txt, build.bat:
- New build config
-
- 1999/08/25 jprice
- config.b, sys/makefile, sys.c, lib/makefile, task.c, main.c, makefile,
- memmgr.c, newstuff.c, proto.h, strings.c, fatfs.c, globals.h,
- initoem.c, inthndlr.c, blockio.c, chario.c, config.c, dosfns.c,
- fatdir.c, date.h, dirmatch.h, portab.h, time.h, drivers/makefile,
- install.bat:
- ror4 patches to allow TC 2.01 compile.
-
- 1999/08/10 jprice
- clobber.bat:
- case
-
- 1999/08/10 jprice
- dsk.c, inthndlr.c:
- ror4 2011-04 patch
-
- 1999/08/10 jprice
- globals.h, inthndlr.c, fatfs.c, fattab.c, blockio.c:
- ror4 2011-03 patch
-
- 1999/08/10 jprice
- irqstack.asm, kernel.asm, makefile, nlssupt.asm, printer.asm,
- procsupt.asm, segs.inc, apisupt.asm, asmsupt.asm, console.asm, entry.asm, execrh.asm, fatdir.c,
- int2f.asm, io.asm, io.inc, stacks.inc:
- ror4 2011-02 patch
-
- 1999/08/10 jprice
- wrpcclk.asm, wratclk.asm, rdpcclk.asm, drivers/makefile, getvec.asm, floppy.asm:
- ror4 2011-01 patch
-
- 1999/05/04 jprice
- systime.c:
- ror4 date fix
-
- 1999/05/03 jprice
- fat.h:
- Changed some variables from signed to unsigned.
-
- 1999/05/03 jprice
- blockio.c, config.c, dosfns.c, fatdir.c, fatfs.c, fattab.c, globals.h,
- inthndlr.c, misc.c, proto.h:
- Patches from ror4 and many changed of signed to unsigned variables.
-
- 1999/05/03 jprice
- sys/makefile:
- no message
-
- 1999/05/03 jprice
- fatfs.c:
- Fixed bug in map_cluster function
-
- 1999/05/03 jprice
- blockio.c:
- Changed getblock & getbuf so that they leave at least 3 buffer for FAT data.
-
- 1999/04/23 jprice
- procsupt.asm:
- Fixed got_cbreak function.
-
- 1999/04/23 jprice
- makefile:
- no message
-
- 1999/04/23 jprice
- asmsupt.asm, inthndlr.c, memmgr.c, misc.c, proto.h, task.c:
- Memory manager changes made by ska
-
- 1999/04/23 jprice
- clobber.bat:
- Initial include
-
- 1999/04/23 jprice
- clean.bat, build.bat, sys/makefile, lib/makefile, makefile, drivers/makefile:
- Improved by jprice
-
- 1999/04/23 jprice
- boot/makefile:
- Ported to NASM by ror4. Improvements
-
- 1999/04/23 jprice
- boot.asm:
- Ported to NASM by ror4
-
- 1999/04/21 jprice
- blockio.c:
- no message
-
- 1999/04/18 jprice
- blockio.c:
- no message
-
- 1999/04/17 jprice
- sys.c, boot.asm:
- Fixed multi-sector code
-
- 1999/04/17 jprice
- build.bat:
- ror4 patches
-
- 1999/04/17 jprice
- boot.asm:
- Changed so multi-sector IO is optional.
-
- 1999/04/16 jprice
- blockio.c, config.c, dsk.c, globals.h, main.c, proto.h, floppy.asm:
- ror4 multi-sector IO
-
- 1999/04/16 jprice
- break.c:
- Steffen contributed.
-
- 1999/04/16 jprice
- dosfns.c, globals.h, inthndlr.c, irqstack.asm, main.c, makefile, procsupt.asm,
- proto.h, chario.c, config.c:
- Steffen c-break handler changes
-
- 1999/04/16 jprice
- fatfs.c, fattab.c, globals.h, main.c, task.c, blockio.c, config.c,
- dsk.c, fatdir.c, fnode.h, dcb.h:
- Optimized FAT handling
-
- 1999/04/13 jprice
- kernel.asm:
- changes for boot loader
-
- 1999/04/13 jprice
- boot.asm:
- Moves boot sector to top of mem
-
- 1999/04/13 jprice
- makefile, fatdir.c, drivers/makefile:
- no message
-
- 1999/04/12 jprice
- fatfs.c, blockio.c:
- Using getbuf to write data instead of getblock
- using getblock made it read the block before it wrote it
-
- 1999/04/12 jprice
- systime.c, config.c, dosfns.c, fatfs.c, globals.h, main.c, proto.h,
- sysclk.c:
- more ror4 patches. Changes for multi-block IO
-
- 1999/04/12 jprice
- rdpcclk.asm, rdatclk.asm:
- more ror4 patches
-
- 1999/04/11 jprice
- blockio.c:
- Working on multi-block IO
-
- 1999/04/11 jprice
- globals.h, inthndlr.c, main.c, newstuff.c, proto.h, task.c, blockio.c,
- config.c, dosfns.c, fatdir.c, fatfs.c, fattab.c:
- ror4 patches
-
- 1999/04/06 jprice
- boot.asm:
- Put back code to read multiple sectors at a time.
-
- 1999/04/04 jprice
- config.c, globals.h, inthndlr.c, main.c, dosfns.c, dosnames.c,
- fatdir.c, fatfs.c, fcbfns.c, globals.h, inthndlr.c, ioctl.c, main.c,
- newstuff.c, prf.c, proto.h, strings.c, chario.c, sft.h, device.h:
- no message
-
- 1999/04/01 jprice
- sys.c:
- SYS modified for new boot loader
-
- 1999/04/01 jprice
- boot/makefile, boot.asm:
- New boot loader
-
- 1999/04/01 jprice
- install.bat:
- no message
-
- 1999/03/29 jprice
- wrpcclk.asm, wratclk.asm, rdpcclk.asm, rdatclk.asm, drivers/makefile,
- getvec.asm, floppy.asm, globals.h, io.inc, task.c:
- ror4 changes
-
- 1999/03/29 jprice
- sys.c:
- Fixed error message
-
- 1999/03/29 jprice
- sys.c, syspack.c, prf.c, misc.c, fcbfns.c, fattab.c, fatfs.c,
- fatdir.c, error.c, dosnames.c, dosfns.c, chario.c, blockio.c, task.c,
- systime.c, sysclk.c, strings.c, proto.h, segs.inc, procsupt.asm,
- printer.asm, nlssupt.asm, newstuff.c, memmgr.c, main.c, makefile,
- kernel.asm, irqstack.asm, ioctl.c, io.inc, io.asm, inthndlr.c,
- int2f.asm, globals.h, initoem.c, execrh.asm, entry.asm, dsk.c,
- console.asm, config.c, asmsupt.asm, apisupt.asm, wrpcclk.asm,
- wratclk.asm, rdpcclk.asm, rdatclk.asm, getvec.asm, floppy.asm,
- drivers/makefile, install.bat, boot/makefile, boot.asm, tail.h,
- time.h, sft.h, stacks.inc, process.h, portab.h, pcb.h, kbd.h, mcb.h,
- file.h, fnode.h, fcb.h, exe.h, fat.h, dosnames.h, error.h, device.h,
- date.h, dcb.h, cds.h, clock.h, dirmatch.h, intfns.txt, clean.bat,
- build.bat:
- New version without IPL.SYS
-
- 1999/03/25 jprice
- fatdir.c:
- Fixed findfirst & findnext functions to treat the attributes like MSDOS does.
-
- 1999/03/23 jprice
- inthndlr.c:
- Now sets carry when we don't support a function
-
- 1999/03/23 jprice
- config.c:
- Now checks for a reads fdconfig.sys file, if exists
-
- 1999/03/23 jprice
- fatfs.c:
- Fixed mkdir DOS function so it will create a directory with same name as the volument label
-
- 1999/03/02 jprice
- inthndlr.c:
- Added some comments. Fixed some minor bugs.
-
- 1999/03/02 jprice
- fatfs.c:
- Fixed bugs with dos set attribute function. Now returns correct
- error code, and errors if user tries to set bits 6 & 7.
-
- 1999/03/02 jprice
- boot.asm:
- Added entry address for more recent versions of TLINK
-
- 1999/03/02 jprice
- intfns.txt:
- Updated interrupt list
-
- 1999/03/01 jprice
- makefile:
- Fixed so it'll work with config.mak
-
- 1999/03/01 jprice
- makefile:
- Turned off DEBUG define.
-
- 1999/03/01 jprice
- inthndlr.c:
- Added some DEBUG ifdef's so that it will compile without DEBUG defined.
-
- 1999/02/14 jprice
- fatdir.c, dsk.c:
- Changed check media so that it checks if a floppy disk has been changed.
-
- 1999/02/14 jprice
- floppy.asm:
- Added functions to check if a floppy disk has been changed.
-
- 1999/02/09 jprice
- makefile, drivers/makefile, boot/makefile, clean.bat, build.bat:
- Make makefile use common config.mak file
-
- 1999/02/09 jprice
- blockio.c, chario.c, dosfns.c, error.c, fatdir.c, fatfs.c, fattab.c,
- fcbfns.c, device.h, error.h, sysclk.c, systime.c, task.c, apisupt.asm,
- asmsupt.asm, config.c, console.asm, dsk.c, entry.asm, execrh.asm,
- globals.h, initoem.c, int2f.asm, inthndlr.c, io.asm, io.inc, ioctl.c,
- irqstack.asm, kernel.asm, main.c, makefile, memmgr.c, newstuff.c,
- nlssupt.asm, printer.asm, procsupt.asm, proto.h, segs.inc, floppy.asm:
- Added Pat's 1937 kernel patches
-
- 1999/02/04 jprice
- chario.c, fatfs.c, fcbfns.c, strings.c, sysclk.c, systime.c, task.c:
- Formating. Added comments.
-
- 1999/02/04 jprice
- inthndlr.c:
- Formating
-
- 1999/02/04 jprice
- makefile:
- Added option to share constants (-d).
-
- 1999/02/04 jprice
- device.h:
- no message
-
- 1999/02/02 jprice
- dosnames.c:
- Steve Miller fixed a bug with doing "cd ." would lock the machine.
-
- 1999/02/01 jprice
- apisupt.asm, asmsupt.asm, config.c, dsk.c, entry.asm, execrh.asm, globals.h,
- initoem.c, int2f.asm, inthndlr.c, ioctl.c, irqstack.asm, kernel.asm,
- main.c, memmgr.c, newstuff.c, nlssupt.asm, procsupt.asm, proto.h,
- strings.c, sysclk.c, systime.c, task.c:
- Clean up; Now you can use hex numbers in config.sys. added config.sys screen function to change screen mode (28 or 43/50 lines)
-
- 1999/02/01 jprice
- chario.c, dosfns.c, dosnames.c, error.c, fatdir.c, fatfs.c, fattab.c,
- fcbfns.c, misc.c, prf.c, syspack.c, blockio.c:
- Fixed findfirst function to find volume label with Windows long filenames
-
- 1999/02/01 jprice
- cds.h, clock.h, date.h, dcb.h, device.h, dirmatch.h, dosnames.h, error.h,
- exe.h, fat.h, fcb.h, file.h, fnode.h, kbd.h, mcb.h, pcb.h, portab.h, process.h,
- sft.h, stacks.inc, tail.h, time.h:
- Clean up
-
- 1999/01/30 jprice
- clean.bat, build.bat:
- Clean up
-
- 1999/01/30 jprice
- main.c, config.c, initoem.c, inthndlr.c:
- Clean up; Fixed bug with set attribute function.
-
- 1999/01/30 jprice
- globals.h:
- Clean up; commented out copyright messages while we debug.
-
- 1999/01/30 jprice
- blockio.c, fatdir.c, fatfs.c:
- Clean up; Fixed bug with set attribute function. If you tried to
- change the attributes of a directory, it would erase it.
-
- 1999/01/30 jprice
- cds.h, clock.h, error.h, fat.h, fnode.h, build.bat:
- Clean up
-
- 1999/01/22 jprice
- cds.h, clock.h, date.h, dcb.h, device.h, dirmatch.h, dosnames.h, error.h,
- exe.h, fat.h, fcb.h, file.h, fnode.h, kbd.h, mcb.h, pcb.h, portab.h, process.h,
- sft.h, stacks.inc, tail.h, time.h, wrpcclk.asm, wratclk.asm,
- rdpcclk.asm, rdatclk.asm, drivers/makefile, getvec.asm, floppy.asm,
- blockio.c, chario.c, dosfns.c, dosnames.c, error.c, fatdir.c, fatfs.c,
- fattab.c, fcbfns.c, misc.c, prf.c, syspack.c, procsupt.asm, proto.h,
- strings.c, sysclk.c, systime.c, task.c, globals.h, initoem.c,
- int2f.asm, inthndlr.c, ioctl.c, irqstack.asm, kernel.asm, main.c,
- makefile, memmgr.c, newstuff.c, nlssupt.asm, apisupt.asm, asmsupt.asm,
- config.c, dsk.c, entry.asm, execrh.asm, boot/makefile, boot.asm:
- Formating.
-
- 1999/01/21 jprice Fixed comments.
- sys.c:
- Added indent program
-
- 1999/01/21 jprice Added messages to sys. Also made
- sys.c:
- it create a .COM file.
-
- 1999/01/20 jprice
- cds.h, clock.h, date.h, dcb.h, device.h, dirmatch.h, dosnames.h, error.h,
- exe.h, fat.h, fcb.h, file.h, fnode.h, kbd.h, mcb.h, pcb.h, portab.h, process.h,
- sft.h, stacks.inc, tail.h, time.h, apisupt.asm, asmsupt.asm, config.c, dsk.c,
- entry.asm, execrh.asm, globals.h, initoem.c, int2f.asm, ioctl.c, irqstack.asm,
- kernel.asm, main.c, makefile, memmgr.c, newstuff.c, nlssupt.asm,
- procsupt.asm, proto.h, strings.c, sysclk.c, systime.c, task.c:
- Imported sources
-
- 1999/01/20 jprice
- wrpcclk.asm, wratclk.asm, rdpcclk.asm, rdatclk.asm, drivers/makefile,
- getvec.asm, floppy.asm, boot/makefile, boot.asm, blockio.c, chario.c, dosfns.c,
- dosnames.c, error.c, fatdir.c, fatfs.c, fattab.c, fcbfns.c,
- inthndlr.c, misc.c, prf.c, syspack.c:
- Imported sources
-
- 10 Jan 1999 SRM
- makefile:
- Took out "/P-" from TLINK
- Changed "bcc" to "tcc"
-
- 06 Dec 1998 patv
- entry.asm:
- New int 21h handler code.
-
- 06 Dec 1998 patv
- inthndlr.c:
- Expanded due to improved int 21h handler code.
-
- 06 Dec 1998 patv
- ioctl.c, proto.h, apisupt.asm, globals.h:
- Expanded due to new I/O subsystem.
-
- 06 Dec 1998 patv
- makefile:
- Added new files for I/O subsystem.
-
- 06 Dec 1998 patv
- main.c, dsk.c:
- Changed due to new I/O subsystem.
-
- 06 Dec 1998 patv
- irqstack.asm, newstuff.c, int2f.asm, kernel.asm, systime.c,
- nlssupt.asm, asmsupt.asm, procsupt.asm, task.c, execrh.asm, fatdir.c,
- fatfs.c:
- Bug fixes.
-
- 06 Dec 1998 patv
- dosfns.c:
- Expanded dos functions due to new I/O subsystem.
-
- 06 Dec 1998 patv
- fcbfns.c:
- Expanded fcb functions for new I/O subsystem.
-
- 06 Dec 1998 patv
- error.c:
- Now handles errors like MS-DOS.
-
- 06 Dec 1998 patv
- chario.c:
- changes in character I/O because of new I/O subsystem.
-
- 06 Dec 1998 patv
- blockio.c:
- Changes in block I/O because of new I/O subsystem.
-
- 06 Dec 1998 patv
- floppy.asm:
- New floppy support functions.
-
- 06 Dec 1998 patv
- device.h:
- Changed for new I/O subsystem
-
- 06 Dec 1998 patv
- error.h:
- Added new errors for new I/O subsystem.
-
- 06 Dec 1998 patv
- io.inc, segs.inc:
- Initial revision.
-
- 09 Feb 1998 patv
- fatfs.c, fattab.c:
- Eliminated FAT12 EOF and error returns.
-
- 07 Feb 1998 patv
- stacks.inc, pcb.h, entry.asm, procsupt.asm, inthndlr.c, task.c,
- globals.h, proto.h:
- Modified stack fram to match DOS standard
-
- 03 Feb 1998 patv
- kernel.asm:
- Added a start-up stack for loadable device drivers. Need the separate
- stack so that all int 21h functions can be called.
-
- 03 Feb 1998 patv
- fatfs.c:
- Fixed lseek bug.
-
- 02 Feb 1998 patv
- globals.h:
- Fixed size of default_drive. Caused failures when break_ena was not zero.
-
- 31 Jan 1998 patv
- task.c:
- Corrected type in load high code.
-
- 31 Jan 1998 patv
- task.c:
- Added load high in memory option in DosExeLoader.
-
- 22 Jan 1998 patv
- task.c:
- Eliminated warnings.
-
- 22 Jan 1998 patv
- process.h:
- Had to change ps_prevps to VOID FAR * due to BC++ error.
-
- 22 Jan 1998 patv
- process.h:
- Corrected ps_prevpsp declaration.
-
- 22 Jan 1998 patv
- task.c:
- Corrected short .COM problem.
-
- 22 Jan 1998 patv
- makefile:
- Outdated stacks.asm.
-
- 22 Jan 1998 patv
- fatfs.c:
- Corrected remaining file name and extension copies that did not
- account for far file nodes due to allocated FILES= spec.
-
- 22 Jan 1998 patv
- inthndlr.c, proto.h, config.c, globals.h, kernel.asm, main.c,
- blockio.c, dosnames.c, fatdir.c, fatfs.c:
- Fixed pointer problems affecting SDA
-
- 11 Jan 1998 patv
- ioctl.c, proto.h, chario.c, device.h:
- Added functionality to ioctl.
-
- 08 Jan 1998 patv
- chario.c:
- Changed automatic requestic packets to static to save stack space.
-
- 06 Jan 1998 patv
- inthndlr.c:
- Broke apart int21_system from int21_handler.
-
- 06 Jan 1998 patv
- kernel.asm:
- Reduced device driver stack sizes.
-
- 04 Jan 1998 patv
- globals.h, proto.h, inthndlr.c, newstuff.c, systime.c, main.c,
- config.c, ioctl.c, memmgr.c, dsk.c, initoem.c, strings.c, sysclk.c,
- task.c, fatfs.c, chario.c, dosfns.c, dosnames.c, fattab.c, fcbfns.c,
- prf.c, syspack.c, blockio.c, error.c, fatdir.c, misc.c, device.h,
- cds.h, clock.h, date.h, dcb.h, fat.h, file.h, fnode.h, kbd.h, mcb.h,
- pcb.h, sft.h, dirmatch.h, error.h, exe.h, fcb.h, portab.h, process.h,
- tail.h, time.h:
- Changed Log for strip utility
-
- 04 Jan 1998 patv
- kernel.asm, inthndlr.c, main.c, config.c, newstuff.c, fatfs.c:
- Corrected subdirectory bug
-
- 03 Jan 1998 patv
- globals.h, kernel.asm, makefile, systime.c, inthndlr.c, main.c,
- proto.h, asmsupt.asm, dosfns.c, dosnames.c, fatfs.c, blockio.c,
- fatdir.c, fcbfns.c:
- Converted data area to SDA format
-
- 31 Dec 1997 patv
- strings.c:
- Added new far string functions.
-
- 30 Dec 1997 patv
- chario.c:
- Modified to support SDA
-
- 01 Aug 1997 patv
- inthndlr.c:
- COMPATIBILITY: Added return '$' in AL for function int 21h fn 09h
-
- 06 Feb 1997 patv
- kernel.asm:
- Reduced stack sizes for block and clock devices.
-
- 06 Feb 1997 patv
- globals.h:
- Changed version format string
-
- 06 Feb 1997 patv
- main.c:
- Modified to support new version format and changed debug message to
- output drive letter instead of number.
-
- 06 Feb 1997 patv
- globals.h:
- Modified to support new version format
-
- 06 Feb 1997 patv
- inthndlr.c, kernel.asm:
- Added hooks for tsc command
-
- 30 Jan 1997 patv
- makefile:
- Added TSC flag for trace support.
-
- 22 Jan 1997 patv
- newstuff.c, inthndlr.c, task.c, irqstack.asm:
- pre-0.92 Svante Frey bug fixes.
-
- 22 Jan 1997 patv
- globals.h:
- Changed to support version.h and pre-0.92 Svante Frey bug fixes.
-
- 22 Jan 1997 patv
- main.c:
- Now does correct default drive initialization.
-
- 22 Jan 1997 patv
- fatfs.c, dosfns.c:
- pre-0.92 bug fixes
-
- 16 Jan 1997 patv
- irqstack.asm:
- Initial revision.
-
- 16 Jan 1997 patv
- globals.h, main.c, memmgr.c, task.c, ioctl.c, config.c, inthndlr.c,
- apisupt.asm, nlssupt.asm, proto.h, makefile, fcbfns.c, chario.c,
- dosnames.c, blockio.c, dosfns.c, fatdir.c, fatfs.c, fattab.c,
- device.h, fcb.h, sft.h, dsk.c, boot.asm:
- Corrected copyright
-
- 10 Jan 1997 patv
- boot.asm:
- Re-written to support C drive and eliminate restrictions on IPL.SYS
-
- 10 Jan 1997 patv
- boot/makefile:
- Changed to use FreeDOS exe2bin and support new boot code
-
- 17 Dec 1996 patv
- boot/makefile:
- Converted to FreeDOS exe2bin.
-
- 13 Sep 1996 patv
- globals.h:
- Fixed boot for hard drive
-
- 29 Aug 1996 patv
- makefile, globals.h, task.c, floppy.asm, wrpcclk.asm, wratclk.asm,
- drivers/makefile, rdpcclk.asm, rdatclk.asm, getvec.asm, boot/makefile,
- boot.asm:
- Bug fixes for v0.91b
-
- 29 May 1996 patv
- clock.h, date.h, dcb.h, kbd.h, dirmatch.h, error.h, exe.h, sft.h,
- tail.h, time.h, fnode.h, mcb.h, pcb.h, portab.h, process.h,
- dosnames.h, fat.h, fcb.h, file.h, device.h, dosfns.c, fatdir.c,
- misc.c, fatfs.c, fattab.c, fcbfns.c, chario.c, dosnames.c, syspack.c,
- blockio.c, error.c, prf.c, initoem.c, sysclk.c, int2f.asm, config.c,
- kernel.asm, inthndlr.c, proto.h, systime.c, apisupt.asm, asmsupt.asm,
- nlssupt.asm, procsupt.asm, task.c, globals.h, memmgr.c, dsk.c, main.c,
- makefile, execrh.asm, ioctl.c, strings.c:
- bug fixes for v0.91a
-
- 19 Feb 1996 patv
- int2f.asm:
- Initial revision.
-
- 19 Feb 1996 patv
- makefile, kernel.asm, nlssupt.asm, proto.h, globals.h, config.c,
- inthndlr.c, task.c, dsk.c, main.c, memmgr.c, strings.c, initoem.c,
- ioctl.c, sysclk.c, systime.c, fatdir.c, misc.c, fatfs.c, dosfns.c,
- dosnames.c, fattab.c, drivers/makefile, cds.h, dirmatch.h, exe.h,
- sft.h, tail.h, time.h, fcb.h, file.h, fnode.h, mcb.h, pcb.h, portab.h,
- process.h, clock.h, date.h, dcb.h, device.h, dosnames.h, fat.h,
- error.h, kbd.h:
- Added NLS, int2f and config.sys processing
-
- 01 Sep 1995 patv
- wrpcclk.asm, wratclk.asm, rdpcclk.asm, rdatclk.asm, getvec.asm,
- floppy.asm, boot.asm, apisupt.asm, asmsupt.asm, proto.h, kernel.asm,
- procsupt.asm, execrh.asm, strings.c, task.c, inthndlr.c, memmgr.c,
- dsk.c, main.c, sysclk.c, globals.h, initoem.c, ioctl.c, systime.c,
- dosfns.c, blockio.c, error.c, misc.c, dosnames.c, fcbfns.c, chario.c,
- fattab.c, prf.c, syspack.c, fatfs.c, fatdir.c, time.h, pcb.h,
- portab.h, process.h, sft.h, tail.h, fat.h, fcb.h, file.h, fnode.h,
- mcb.h, date.h, dcb.h, device.h, dirmatch.h, dosnames.h, clock.h,
- error.h, exe.h, kbd.h:
- First GPL release.
-
- 30 Jul 1995 patv
- dsk.c, memmgr.c, proto.h, strings.c, task.c, blockio.c, misc.c, chario.c,
- dosnames.c, error.c, fattab.c, fcbfns.c, prf.c, syspack.c, dosfns.c,
- fatdir.c, fatfs.c, mcb.h, pcb.h, portab.h, process.h, sft.h, tail.h,
- time.h, date.h, dcb.h, device.h, dirmatch.h, dosnames.h, fat.h, fcb.h,
- file.h, fnode.h, clock.h:
- Eliminated version strings in ipl
-
- 30 Jul 1995 patv
- error.h, kbd.h, exe.h:
- Fixed ipl
-
- 30 Jul 1995 patv
- boot.asm:
- Initialized stack before use.
-
- 05 Jul 1995 patv
- asmsupt.asm, proto.h:
- Initial revision.
-
- 02 Jul 1995 patv
- boot.asm, time.h, tail.h, process.h, sft.h, portab.h, pcb.h, kbd.h,
- mcb.h, fnode.h, file.h, fat.h, fcb.h, exe.h, error.h, dirmatch.h,
- dosnames.h, dcb.h, device.h, date.h, clock.h, boot/makefile,
- procsupt.asm, kernel.asm, execrh.asm, apisupt.asm, task.c, strings.c,
- inthndlr.c, main.c, memmgr.c, dsk.c, sysclk.c, systime.c, ioctl.c,
- initoem.c, globals.h, makefile, misc.c, error.c, fcbfns.c, dosnames.c,
- chario.c, syspack.c, prf.c, fattab.c, fatfs.c, fatdir.c, dosfns.c,
- blockio.c, wrpcclk.asm, wratclk.asm, getvec.asm, rdpcclk.asm,
- rdatclk.asm, floppy.asm, drivers/makefile:
- Initial revision.
-
- 25 May 1993 patv
- dirmatch.h:
- Initial revision.
-
-